“12306” 是如何支撑起百万 QPS 的?
如何 百万 支撑 QPS 12306
2023-09-11 14:14:55 时间
12306抢票,极限并发带来的思考?
每到节假日期间,一二线城市返乡、外出游玩的人们几乎都面临着一个问题:
抢火车票!虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。
尤其是春节期间,大家不仅使用12306,还会考虑“智行”和其他的抢票软件,全国上下几亿人在这段时间都在抢票。“12306服务”承受着这个世界上任何秒杀系统都无法超越的QPS,上百万的并发再正常不过了!
笔者专门研究了一下“12306”的服务端架构,学习到了其系统设计上很多亮点,在这里和大家分享一下并模拟一个例子:
如何在100万人同时抢1万张火车票时,系统提供正常、稳定的服务。
大型高并发系统架构
高并发的系统架构都会采用分布式集群部署,服务上层有着层层负载均衡,并提供各种容灾手段(双火机房、节点容错、服务器灾备等)保证系统的高可用,流量也会根据不同的负载能力和配置策略均衡到不同的服务器上。
下边是一个简单的示意图:
负载均衡简介
上图中描述了用户请求到服务器经历了三层的负载均衡,下边分别简单介绍一下这三种负载均衡:
OSPF(开放式最短链路优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP)。
OSPF通过
相关文章
- 如何从Eclipse导入github上的项目源码
- 如何让Win2000和XP SP1支持System.EnterpriseServices(XP已验证)
- “12306”是如何支撑百万QPS的?
- 如何快速调度 PTS 的百万并发能力
- 大数据在企业中发挥的作用,以及如何驱动企业创新
- JAVA笔记-如何将百万级数据高效的导出到Excel表单
- 既然Talk is cheap, 那么就用代码教你如何进行正交设计
- 追本溯源,看云效平台如何帮企业提升研发效能
- 深入理解 SAP Fiori Elements 工作原理系列之二:如何给 SAP Fiori Elements 应用添加自定义按钮
- SAP Spartacus 如何根据 page layout 获得对应支持的 slots
- 如何将bing搜索页面以HTML Mashup的方式嵌入到SAP C4C页面
- 如何在S/4HANA生产订单创建上下文里拿到前置销售订单信息
- 如何使用Angular FormBuilder
- 如何解决conda安装pytorch,总是下载失败的问题。
- 如何制作产品镜像
- 结合Java和机器学习技术,如何驾驭大数据提升业务效率和竞争力?
- 华为交换机S5735S如何堆叠iStack