12306的實時票務系統有多厲害?
以前沒有多么厲害,也是經過不斷迭代開發才走到了今天。那么,它是怎么成為今天這樣一個超級系統的呢?
從本質上講,12306網站是一個票務電子商務網站。
2010年春節,12306官網正式上線運行,平臺上線后,因為訪問數據量過大,造成大量的用戶無法購買,從普通的網民到程序員都狂噴12306的系統垃圾。
12306票務系統一期的開發費用合計3個億(含硬件),這套系統需要結合鐵道部信息數據庫,結合電話售票、窗口售票等相關的數據,所以,12306不是一個簡單的在線交易系統,而是一個全國最大的大宗物資貨運系統。
12306的技術確實非常難解決,利用現有的分布式數據庫、緩存、負載均衡技術,已經不能滿足需求。
12306在春運的時候,日均有297億次訪問量。天量的火車票查詢是影響12306性能的重要原因之一,大概占了90%以上的訪問流量。更棘手的是:峰谷的查詢有天壤之別,幾乎沒有辦法在成本和并發能力之間做一個好的平衡。
2015年阿里云與12306進行合作,免費給12306提供技術支持,把12306網站的查詢訪問放在了阿里云上。
一般而言,查詢是多數售票系統訪問量最大的部分,它的請求次數一般占到整個網站的85%以上。交易相關的過程中,都會多次提交查詢請求,這讓余票查詢系統成為整個系統的壓力集中地。
所以,需要把余票查詢模塊和12306現有系統做分離,讓其具備獨立部署的能力;在云上獨立部署一套余票查詢系統,這樣子12306和云上都有了一套余票查詢系統,調度更為靈活。
經過技術改造的12306系統,年售票量已超過35億張,是世界上規模最大的實時票務交易系統。平均每日發售車票達937萬張,最高日售車票1135.7萬張,高峰時每秒售票量達700張,已占到了總銷售票量的80%。 高峰日的網絡頁面瀏覽量超過1500億次,相當于全中國人每人每天訪問了票務頁面100多次。
如今的12306已成為中國最牛的電商網站,能讓上億人每天盯著網站使勁刷,就為了買到票,很多不惜花錢買軟件刷,除了12306,基本也沒誰了。淘寶、京東、亞馬遜直接秒殺!