12306之殤

摘自網易評論

---------------------------------------華麗的分割線--------------------------------------

12306首秀被罵的狗血噴頭後鐵道部找來IBM、阿里巴巴等大企業要解決方案,給出的條件是資金管夠但是問題得解決。幾大企業最後都拒絕了。12306開始自己嘗試解決問題。他們發現市面上可以買到的成套解決方案都不足以應付春運購票負載,所以只能自己改進已有的數據庫。以前12306用的是小型機,發現性能嚴重不足,遂改用x86系統+linux平臺。最後他們的核心繫統用了十幾個節點的多路Xeon E7,每個節點配1TB內存,數據庫全部在內存中運行。2013年春運,12306系統峯值負載11萬tps,與2012年淘寶雙11活動峯值負載相當,新的系統基本經受住了考驗。

淘寶的問題是其系統架構是分散度較高的,各個訂單之間關聯度不大;而12306每出一張票都要對全線路做數據更新(因爲一條線路存在多個站點),因此係統負載相較淘寶來說集中很多,直接搬淘寶的方案也無法解決問題。淘寶的應用類型決定了阿里巴巴可以通過部署大量的服務器來分散壓力,但12306就不行。其實他們的核心繫統的硬件成本不過數百萬,不是他們不想採購更多服務器,而是買更多的服務器也沒什麼用途。最後,在經過軟件層面的優化之後,12306的瓶頸其實是核心節點的CPU、內存性能。但是這個性能的提升不是朝夕的事情,而是受限於摩爾定律,基本上每兩年才能翻一倍多些。

---------------------------------------華麗的分割線-------------------------------------

12306搞了一個高度中央集權的系統,過高的估計了服務器的能力,本應是調度服務器卻被搞成了數據處理服務器,全國瞬間衝入的數據量,服務器怎麼能承擔的了?這就是這套系統失敗的根本原因。他們本可以將全國個大鐵路局建成用於數據處理的二級服務器,處理後的數據由中央服務器交互調度,甚至可以在各省建立三級服務器;原始設計缺少戰略頭腦,現在卻滿世界找理由,不可理喻。


---------------------------------------華麗的分割線--------------------------------------

摩爾定律在這裏不適用。
首先架構有問題。如5樓所說,應在調度系統下功夫。其次,x86+linux平臺的性能並不高,可選數據庫和硬件結合在一起的綜合性平臺,這種系統內部已經針對自己的硬件做過優化,響應速度自然比不同廠商的集成系統要好。btw,DB在內存中運行對於這樣的系統是必須的。硬件方面還可以選擇大機,但必須軟硬都提高才行。
此外,就大家反映的問題來看,session的處理方法也要提高。
純個人見解,歡迎討論,但不喜勿噴。

---------------------------------------華麗的分割線--------------------------------------

按線路熱門程度,幾條線路做一個小型數據庫,熱門線路單獨數據庫,機架換刀片,每條線路以站爲單位,拆成分段票,在訪問層做隊列,這樣每趟列車就算一千張,20站,才兩萬張車票,這數據大嗎?

出問題也隻影響一小部分,不至於整站都癱了啊!上億的設備抗不住登陸查詢?連驗證碼都生成不出來有點說不過去了吧?

---------------------------------------華麗的分割線--------------------------------------

DB放在TMS的固態存儲,它的顆粒速度是目前商業SSD的幾千倍。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章