每年双11,天猫成交额都会一次一次地刷新世界纪录,阿里巴巴核心系统100%上云,撑住了双11的世界级流量洪峰。在这一流量战场上,阿里可谓是华山论剑的最大赢家。今天我把阿里针对淘宝双十一万亿级流量下的分布式缓存文档共享出来,全面解析阿里双11的武功秘籍。
阿里双十一的四种应用场景
MDB 典型应用场景
- 用于缓存,降低对后端数据库的访问压力。
- 临时数据存储,部分数据丢失不会对业务产生较大影响。
- 读多写少,读qps达到万级别以上。
FastDump 典型应用场景
- 周期性地将离线数据快速地导入到Tair集群中,快速使用到新的数据。
- 读取低延迟,不能有毛刺。
LDB 典型应用场景
- 通用kv存储,交易快照,安全风控等。
- 存储黑白单数据,读qps很高。
- 计数器功能,更新非常频繁,且数据不可丢失。
RDB 典型应用场景
- 复杂的数据结构的缓存与存储。
- 如播放列表,直播间等。
双十一技术挑战
- 访问峰值增速:Tair峰值 > 交易峰值 > 总GMV
- 多地域多单元
- 体验与成本
- 稳定性,高可用
性能与成本
内存数据结构
- cache meta
- slab_mabager
- hashmap
- pages
锁的影响
- 细粒度锁(fine-grained locks)
- 无锁数据结构(lock-free data structures)
- CPU本地数据结构(per-CPU data structures)
- 读拷贝更新(RCU)
用户态协议栈+内存合并
客户端优化
- 网络框架替换,适配协程mina =netty吞吐量提升40%+
- 序列化优化集成kryo和hessian吞吐量提升16%+
内存网格
- 业务场景读写量超大大量本地计算提供高性能计算快速IO能 力
- 特性数据本地性读穿透Write Through / Write Behind/merge多单元replication
- 效果读取降至27.68%写入降至55.75%
缓存难题——热点
缓存击穿
- 突发流量热门商品,店铺时事新闻各类压测
- 缓存被击穿限流
- 结局全系统崩溃
- 根源访问热点
热点散列
- 热点类型频率热点流量热点
热点散列效果
- 热点QPS数
- 热点流量
- 热点集群散列效果对比
写热点
- 热点合并实时识别合并写引擎
阿里巴巴的这个双十一万亿流量分布式缓存,完整呈现如何设计响应亿级请求。
教你如何构建高并发、大流量系统方能经受起亿级线上用户流量的真实考验。
由于头条发文图片质量可能会受到影响(图片会被压缩导致清晰度下降),完整版的阿里双十一万亿流量分布式缓存设计,我在这里做一个开源式的分享,用以帮助到更多想从大厂技术层面彻底提升自身硬实力的互联网从业者。