12306的实时票务系统有多厉害?


今年 。春运全国铁路预计发送旅客3.56亿人次 。
这么多人 。什么概念?
相当于半个欧洲地区的人都离家出走了 。
这些人手拉手能够绕地球15圈。
然而 。
铁路部门12306总共安排4000多次旅客列车 。
如果把压力全推给12306 。那就太错怪它了 。
因为12306遇到的难题是世界级的 。
全欧洲一年的火车票购买量 。也抵不过春运这一个月!
而国外没有春运这样的场景 。自然没有可以解决的办法 。
只有依靠国人自己的技术了 。
这个时候 。12306找来了马云和他下面的云计算来做帮手 。
说是找 。也不完全准确 。最开始 。是马云希望解决农民工回家的问题 。所以要求阿里巴巴下面年轻的工程师 。跟12306的工程师一起解决IT技术架构的问题 。
在针对系统架构做了优化之后 。12306还要解决一到春运就暴增成千上万倍的网站流量 。
其实 。12306是世界上规模最大的实时交易系统之一 。在春运的时候 。12306日均有297亿次的访问量 。高流量和高并发一直是需要解决的关键问题 。
其实 。解决这一问题很大部分原因取决于服务器 。
【12306的实时票务系统有多厉害?】不就是个服务器么?想买多少买多少!
NO!
服务器不是你想买 。想买就能买 。
如果按照国庆、春节这种高峰期的时候来配置服务器 。
到了平时时间段 。这些资源就会被浪费 。使用率甚至不到10% 。
但如果按照平时的需求来配置服务器 。
那到了春节的时候 。那就远远不够用了……
这个时候 。使用云计算则成为最有效的解决办法!
12306的系统还是那一套 。
只是使用云计算帮忙动态分配计算资源 。
就像开水龙头一样 。
需要的时候呢多租点 。
不需要的时候呢就少租点 。由12306已有的服务器支撑 。
现在 。12306就已经把大部分的车票查询业务放到了阿里云计算平台上 。
你可能会问 。车票查询又不涉及到结算系统 。哪有那么大的压力?
其实 。在整个12306系统架构中 。请求次数最集中的一定是余票查询系统 。流量占到整个网站的90% 。
我们在买票过程中 。都会多次提交查询请求 。更不要说大量刷票软件问世后 。增加的工作负载 。这一切都让余票查询系统成为整个系统的‘短板’ 。
12306选择引入阿里云:一方面 。可以让12306在高流量时期提供充足的空间 。避免了因为高并发的流量冲击导致的宕机;另一方面 。在请求次数减少时 。可以缩减云服务器资源 。这样就节省了成本开支 。
而解决了这个瓶颈 。阿里云就协助12306朝着更快、更强、更流畅的小目标又前进了一小步!
在国外 。他们没有双11 。没有春运这种好几亿人同时秒杀、购票的场景 。就不可能有这样的技术 。解决这类问题 。
所以 。12306跟阿里云联手解决问题 。虽说只是前进了一小步 。却是中国难题逼出了世界级的技术 。是中国科技创新的一大步!
作为一个政府的线上平台 。12306则可能是中国民用政府系统里面技术最成熟的平台了!
希望我的解答能够对你有所帮助 。谢谢 。

12306的实时票务系统有多厉害?

文章插图
其他观点:
以前没有多么厉害 。也是经过不断迭代开发才走到了今天 。那么 。它是怎么成为今天这样一个超级系统的呢?
从本质上讲 。12306网站是一个票务电子商务网站 。
2010年春节 。12306官网正式上线运行 。平台上线后 。因为访问数据量过大 。造成大量的用户无法购买 。从普通的网民到程序员都狂喷12306的系统垃圾 。
12306票务系统一期的开发费用合计3个亿(含硬件) 。这套系统需要结合铁道部信息数据库 。结合电话售票、窗口售票等相关的数据 。所以 。12306不是一个简单的在线交易系统 。而是一个全国最大的大宗物资货运系统 。
12306的技术确实非常难解决 。利用现有的分布式数据库、缓存、负载均衡技术 。已经不能满足需求 。
12306在春运的时候 。日均有297亿次访问量 。天量的火车票查询是影响12306性能的重要原因之一 。大概占了90%以上的访问流量 。更棘手的是:峰谷的查询有天壤之别 。几乎没有办法在成本和并发能力之间做一个好的平衡 。
2015年阿里云与12306进行合作 。免费给12306提供技术支持 。把12306网站的查询访问放在了阿里云上 。
一般而言 。查询是多数售票系统访问量最大的部分 。它的请求次数一般占到整个网站的85%以上 。交易相关的过程中 。都会多次提交查询请求 。这让余票查询系统成为整个系统的压力集中地 。

推荐阅读