【一针见血】热点账户
【思考点滴】
作者 : 杨考 微信号 : devin_cn_hd_09_16
1、热点账户的概念:
热点账户就是在交易过程中,出现频次特别高的账户,交易频次指的是某个时间段的交易频次一直保持在比较高的次数。
如果是数据操作错误重试导致某账户瞬时出现高频操作,则不属于热点账户范畴。
2、 热点账户的判别标准
1) 账户每秒有10次以上更新需求
2) 串行化时账户处理延迟高于1秒以上
3、当下最常见的几种处理热点账户问题方案
举个栗子:
即类似于你有一个银行卡,一直接存钱和提现,因为频次过高,你的余额都来不及实时更新了,
常见解决方案
1)账户拆分,拆分主账户
此时解决方法就是再办一张同行的卡,或者其它银行的卡,一起承担存钱和提现的需求
2)新增多个子账户,
向银行申请,为该主卡办理多个子卡,用子卡进行分流
3)按功能进行划分
申请一个专门接收打款的卡
申请一个专门接受提现的卡
4)异步队列延时处理
先把所有的打款、提现的请求入队列,延时处理账户余额更新
5)实在没招了,合并处理
把某个特征相似的操作进行合并处理。即把别人一万次打款请求合并为一个打款请求,此时最终只需要申请一次打款,其它人的卡逐个扣款
提现就不好解决了,可以增加一个提现缓冲卡,但是迫不得已,可以把多次提现请求,合并为一个请求,先从该账户把钱提到提现缓冲卡,再由提现缓冲卡分发给其它目标账户。
4、 实际业务中热点账户的处理方案
天底下没有一个通用的解决方案,热点账户问题,都是根据场景,逐个击破的。
热点账户类型 |
账户属性 |
实时需求 |
锁需求 |
处理方式 |
性能 |
业务大账户 |
内部账户 |
无实时余额查询 无实时提现 |
无需加锁 |
异步MQ延时处理 |
满足 |
大代理商账户 |
对外账户 |
无实时余额查询 无实时提现 |
没有加锁需求 |
异步MQ延时处理 |
满足 |
热门商户(推广) |
对外账户 商户账户 |
实时余额查询 实时提现 |
有加锁需求 |
串行化同步 |
亟待提升 |
5、 热点账户总结
1) 在异步化背景(账户实时处理的上游,如果已经存在了异步化的处理)下,此时业务所需要的下游的实时性是不可能完全实时的
2) 对于热点账户而言,问题在于一条数据表项的更新频次已经达到了上线,所以解决热点账户的方案可以从解决数据读取的瓶颈出发。
【一针见血】热点账户相关推荐
- 热点账户问题和常用解决方案【上】
热点账户问题由来已久,一直是账户系统设计中的一个难点和瓶颈! 小拽将通过上中下三篇文章,分别介绍下热点账户的产生,解决方案和延伸应用! 本篇主要介绍下什么是热点账户?通用财务账户系统如何设计?以及其中 ...
- 支付结算系统如何应对高并发、热点账户等问题
互联网金融系统的核心是支付结算,而支付结算的基础又是账户系统.金融账户系统的特点是并发量大.响应快.交易金额大,热点账户问题突出.一个合格的账户系统既要解决上述问题,又必须绝对保证资金安全.作为宜信这 ...
- 一种用于解决银行代理产品交易热点账户的系统及方法
一种用于解决银行代理产品交易热点账户的系统及方法 摘要 本发明公开了一种用于解决银行代理产品交易热点账户的系统,该系统包括业务受理终端.系统主机.前置处理装置和第三方单位系统,其中:业务受理终端通过 ...
- 热点账户冲扣设计方案
热点账户冲扣设计方案 前言:方案设计前提 一般账务系统对账户的冲扣需要满足以下两点 1:更新账户表中的账户余额. 2:记录账户明细表中的账户更新前余额,账户更新后余额,操作金额. 其中对账户表中的余额 ...
- 账户系统如何应对高并发、热点账户等问题
互联网金融系统的核心是支付结算,而支付结算的基础又是账户系统.互金账户系统的特点是并发量大.响应快.交易金额大,热点账户问题突出.一个合格的账户系统既要解决上述问题,又必须绝对保证资金安全.作为这家互 ...
- docker重启mysql数据丢失_mysql如何确保数据不丢失的?我们借鉴这种设计思想实现热点账户高并发
前言 本文篇幅较长,全是干货,建议亲们可以先收藏慢慢看哦 写文不易,欢迎大家一起交流,喜欢文章记得关注我点个赞哟,感谢支持! 本篇文章我们先来看一下mysql是如何确保数据不丢失的,通过本文我们可以了 ...
- 互联网账户系统的具体实现
转载自 互联网账户系统的具体实现 导读 在上一篇文章中我们通过场景举例的方式,讨论了一套相对通用的互联网业务账户系统,从业务模型上应该如何定义.那么除了从业务模型上进行定义外,在具体系统实现上又该如 ...
- 互联网金融-资金账户系统设计
互联网金融-资金账户系统设计 如何使用Mysql正确的处理财务数据 准备开发和钱有关的功能,还有哪些地方要注意 在用户财务虚拟账户上面怎么才能最大程度防止被黑客篡改数据? 一次给女朋友转账引发我对分布 ...
- 宜信支付结算账户系统浅析
互联网金融系统的核心是支付结算,而支付结算的基础又是账户系统.互金账户系统的特点是并发量大.响应快.交易金额大,热点账户问题突出.一个合格的账户系统既要解决上述问题,又必须绝对保证资金安全.作为宜信这 ...
最新文章
- LeetCode简单题之判断国际象棋棋盘中一个格子的颜色
- Linux 小知识翻译 - 「补丁」(patch)
- leetcode - Container With Most Water
- html 边框循环变色,方框用过渡走一圈变色用css怎么实现
- Python学习笔记:线程和进程(合),分布式进程
- NGUI 减少Draw Call
- [DeeplearningAI笔记]序列模型3.2有条件的语言模型与贪心搜索的不可行性
- python正则怎么取反_第11.19节 Python 中正则表达式的扩展功能:前视断言和前视取反...
- opencv图像分析与处理(11)- 频率域滤波消除周期噪声
- mysql mariadb libs_mysql 安装 【解决】mariadb-libs is obsoleted by *** - Ctrl+CCtrl+V - ITeye博客...
- 八、JavaScript
- 服务器防御DDOS的办法
- CGfsb [XCTF-PWN]CTF writeup系列2
- 用MicroPython开发ESP32-文件传输工具-ampy
- React中过渡动画的编写方式
- 新手真无线蓝牙耳机怎么选?大神推荐高颜值时尚主流蓝牙耳机推荐
- dotnet OpenXML 文本 Kerning 字间距的作用
- ubuntu20.04没有网易云音乐客户端解决办法
- 愉快复习马克思主义与当代
- MongoDB 查询昨日/昨天数据
热门文章
- TBarCode SDK 11.14 Crack
- Substrate 基础教程(Tutorials) -- 授权特定节点
- windows如何映射到android,映射手机无线盘教程 通过无线SMB共享将手机映射为Windows磁盘...
- 快速解决Canvas.toDataURL 图片跨域的问题
- 基于区块链的甘薯质量安全追溯系统设计
- 分支限界法——以单源最短路径为例,理解什么是分支限界法
- 语音合成TTS | AI产品经理需要了解的AI技术概念
- 蓝牙RSSI定位入门到精通(4)-指纹法实现
- 【绘制】HTML5 Canvas正多边形的绘制(三角形、矩形、五边形、六边形等等)
- vue关于element日历calendar组件上月、今天、下月、日历块点击事件及模板源码