在各种秒杀活动大行其道的今天,订单系统的性能与稳定日益重要。乐视集团作为这一技术的佼佼者,在多次的电商狂欢节中都能抢占商机、拔得头筹,其表现无疑为其他企业和厂商提供了非常有价值的参考。
在Gdevops全球敏捷运维峰会北京站的现场,乐视BOSS平台技术部架构师梁阳鹤就给大家带来了《从零开始搭建百万每秒订单系统》的精彩演讲。从部分到整体,从微观到宏观,层层递进,步步为营,详尽地介绍了整套乐视支付架构及其实现每秒处理百万笔交易的成功要点。
(点击“这里”听梁阳鹤演讲完整录音)
演讲主要分为三个部分,首先,梁老师简单地介绍了分表、分库策略及相关的数据迁移扩容实例,接着,以乐视自主开发的分布式ORM框架Mango为例,揭晓了分库分表中间件较之本地分库分表在性能、稳定性、读写分离等方面上的优势。而在订单ID设计上,梁老师主要突出了Snowflake算法和分库精度冗余等常见设计问题。
如果将分库分表看作二维拆分,那么集群拆分便是第三维度。乐视秒杀系统的奥妙,在于它通过使用分库分表搭建多个订单系统集群,而每个集群之间保持数据独立,再根据用户ID的某些字段将请求路由到不同的集群,逐步达成系统从十万到百万的扩容。
但分库是否就是一个可无限扩容的万能操作呢?通往每秒百万级订单的最大阻碍又是什么呢?且听梁老师与我们娓娓道来: