微信红包数据架构演变
嘉宾 :莫晓东
• 红包印象
• 2015春晚红包
• 2015新的挑战
• 2016再战春晚
1
红包映像 微信红包是什么 ?
微信红包是什么
包红包(支付)
发
抢 2014年短短几天内快速上线的内部项 目 ,满足业务基本需求 ,每秒几
拆 百发送 ,每秒上千拆的请求。
2
微信红包资金流
• A 用户发红包 ,C, D, E 用户抢红包
• 支付(发红包) • 转账(拆红包) • 退款 (过期 24小时)
C 用户微信支付余额
银行卡 or 银行卡
D 用户微信支付余额
微信红包中转账户 微信红包中转账户 微信红包中转账户
A用户微信支付余额 A 用户微信支付余额
E 用户微信支付余额
• 资金原路返回
必须做到资金安全,所以需要事
务。
400倍的挑战
2015年春晚红包 海量之道
全民摇红包,不能失败
3
存储层方案和设备选型
• 项 目挑战:
• 预估量级是日常的100倍。
• 无法借鉴、摸着石头过河。
• 精确压测性能,为容量评估和限流提供依据。
• 从配置、部署、容灾三方面深入优化,为业务保驾护航。
• 是否继续使用MySQL?
• 需要多少机器,怎样部署。
• 使用什么机器类型。
• 可能出现什么问题,怎么解决。
继续使用MySQL
• MySQL支持事物,满足一致性要求。
• 结构化存储,紧凑、连续。
• 支持多索引。
• 部署简单,工具支持。
• 团队技术积累。
• 设备改进。
硬盘从sas升级FusionIO SSD。
系统从SUSE linux 10升级tlinux 1.2。
• 测试先行,实践是检验真理的第一标准。
模拟测试:
吞吐量:2.6w/s
主事物:2k+/s
同步速度:6k/s
4
性能优化
• 业务最终一致性,cap、base。 • 数据优化。
• 允