数据库热点数据实现
1. 背景
公司奖励户在活动期间发红包,涉及大量的并发。单行操作难以满足性能问题,通过子账户的拆分来解决问题
2. 流程
2.1 加钱
封装成组件。
1 维护可扣款子账户列表
2 在页面可以选择往哪个子账户加钱,加多少钱。
3 异步通知母账户加钱(MQ)。异步是为了性能考虑,如若使用同步必然降低性能。
2.2 扣款
封装成组件。
1 维护可扣款子账户列表(有余额的),每个子账户有个状态:是否可以扣款。
2 扣款的时候随机路由选择某个子账户做扣款。若失败,重试
3 扣款成功,异步同步母账户扣款(MQ). 异步是为了性能考虑,如若使用同步必然降低性能。
4 定时任务轮询,如果某个子账户没有钱,更新列表的子账户的状态。这样扣款的时候就不会因为子账户没有钱产生失败的情况。
2.3 业务模型
母账户
子账户
2.4 物理模型
母账户
母账户表. account
子账户
多张子账号表。假如有24个字账户,表明可以是 sub_account_0 - sub_account_23
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南