業內稱12306癱瘓為系統架構規劃問題
2012年春節,鐵道部推出 12306 網站,進行網絡實名購票。每一個返鄉人原以為能買著一張回家的火車票,但結果還是大失所望。
12306網站癱瘓了。大量用戶無法登錄,頁畫刷新時間長達 30 分鐘,定票付了款卻無法購票。不少購票者無奈地怒斥道,12306網站形同虛設。
12306網站癱瘓后,鐵道部相關負責人表示,將增加服務器與帶寬,改善網購登錄難的問題。
“即便增加了足夠的服務器與帶寬,但是軟件系統架構不行,也無濟無事。”一位從事航空電子客票業務的人士說。
購票時限之錯?
自元旦起,12306網站就處于半死不活的狀態。“前訪問用戶過多,請稍后重試!”這是大量用戶會碰上的無法登錄;還有不少用戶登錄之后,卻無法打開二級、三級頁面,只有在不停地刷新;一些幸運的用戶登錄后成功付款,但卻功虧一簣,卻無法買票了。
對于“付款成功卻無法購票”的情況,12306官網表示,“這是由于網絡等原因導致銀行的支付結果數據沒有及時回傳至 12306 網站。”
而一位從事航空電子客票業務的人士認為,這是 12306 網站的系統與銀行的支付系統連接不順暢,12306無法及時響應銀行。
事實上,“付款成功卻無法購票”的現象也可能是由網絡購票的時限造成的。鐵道部規定,網絡購票需要在 30 分鐘內完成,如果超時,就會重新返回售票系統,造成票沒買上而錢被扣除的現象。
目前,12306網站只支持工商銀行、中國農業銀行、中國銀行、招商銀行和銀聯的網上銀行功能,不支持第三方支付公司。“支付方式太少了,很多用戶事先并不知道只能使用 4 家銀行的網銀。”一位進行過網絡購票的人士表示,這會讓很多用戶花費很多時間來支付,最終卻無功而返。
面對這樣的情況,鐵道部將網絡購票的支付時限延長至 45 分鐘。但這一招無異于“飲鴆止渴”。前文所述的專業人士對此表示,支付時間過長,會極大影響網站的安全性,給黑客與釣魚網站以可乘之機。
前文從事電子客票的人士告訴記者,為了保證支付的安全性,網絡支付有較強的時間限制。在一般情況下,提交訂單 15 分鐘內必須完成付款,否則訂單取消。一般來說,從下單、支付到出票,最多在 10 分鐘以內就可以完成了。
“一位用戶呆在網站上的時間就需要幾十分鐘,這會讓網站變得越來越擁擠。”一位 IT 運維技術工程師告訴記者,網站對每位用戶的需求響應慢,那么用戶從登錄到退出登錄的時間就需要更長,這樣的惡性循環會讓網站變得越來越不堪重負。
無力承受的高流量
1月 3 日,12306網站公布了“互聯網購票起售時間”,每天分別在 8 點、10點、12點和 15 點放票。但這一舉措更激化了網站與用戶的“矛盾”。
“這樣的定點放票會形成秒殺的效果。開始放票的 1 分鐘之內,訪問量會劇增,形成一個個高峰。”前文所述的航空電子客票人士說道,高峰時,服務器需要交互的響應量成幾何級數增長。
“12306系統癱瘓在所難免。”一位 CDN (內容分發網絡)行業人士認為,從需求層面來說,火車票是剛性需求,不比購物。用戶買不到票就會不停地刷新,“今天買不到,明天再繼續”,需求得不到滿足的用戶會持續聚集在網站上,這會帶來連續的“峰值”。
據鐵路部門的預計,從 1 月 8 日到 2 月 16 日,春運期間鐵路將發送旅客2.35億人次,同比增加 1352 萬,日均達到 588 萬人次,但目前鐵路的春運客運能力僅為 382 萬。這意味著每天有 200 萬人次的缺口。
1月 5 日,本報記者查詢了 Alexa 排名,數據顯示,近一周,12306網站的“一周平均排名”為 339,日均 IP 為 194 萬(每一個 IP 有可能是好幾個人訪問)。而國內航空網絡售票網站“travelsky。com”的“一周平均排名”為 11340,日均 IP 為 8 萬多。相比之下,火車票的需求遠大于機票。
一位 CDN 技術工程師告訴記者,從行業經驗來看,春運期間,12306的并發量(同時在線訪問量)達到 1GB (1GB=1024MB,1MB=1024KB,1KB=1024字節),而一般來說,每個人一次性訪問只需要花費 2KB 左右,有時候甚至只有幾個字節。這意味著峰值時,12306網站的同時在線訪問人數高達 500 多萬。
這位技術工程師舉例道,網上足球直播的視頻的并發量達到幾十 GB,但由于傳遞的都是靜態的內容,視頻網站服務器需要的“處理能力”只是幾十 MB。但是,12306網站交互的是動態信息(查詢、定票),所有的訪問請求最終都需要 12306 網站的服務器作出響應,1GB 就需要網站服務器擁有處理 1GB 訪問的能力。
一位大型集團企業的 CIO (首席信息官)根據其多年的工作經驗判斷,此次 12306 網站癱瘓是系統架構規劃的問題,導致不能有效支持大并發量集中訪問。同時,12306在 IT 管理上也有問題,未能進行有效的壓力測試和運行模擬。
重硬輕軟
據了解,12306網站于 2011 年 6 月 1 日正式上線,到春運也不過半年時間。
“12306網站只是在高鐵、動車上進行嘗試,之前并沒有遇到春節這樣巨大訪問量的經驗。不僅沒有做過模擬,并且一上來就是全國性的訪問,系統癱瘓在意料之中。”一位行業人士說。他告訴記者,電信、金融等行業上新的大規模系統時,在壓力測試之外都會進行區域試點。
12306的官方網站顯示,該網站是鐵道部信息中心和中國鐵道科學研究院共同開發的。據鐵道部信息中心的一位技術人員透露,12306網站的研發與運維已經單獨成為了一個機構,歸屬于鐵道部信息中心管理。
據業內人士透露,12306網站是由鐵道科學研究院電子所負責開發和維護。鐵科院是鐵道部下屬企業,電子所是鐵科院下屬單位,該所還負責鐵路售票系統的開發和維護。鐵路行業,純粹的軟件并不受重視,基建、大型裝備和各種硬件等“賺錢”、看得見的設備鋪天蓋地。
“要靠硬件來實現軟件的價值,這種思路使得鐵道部的 IT 技術實力很難得到提升。”上述行業人士表示。
目前鐵路行業還沒有民營的系統集成商也可以側面印證鐵路行業 IT 技術落后。在 IT 技術比較發達的電信、金融行業,國內就存在多家系統集成商。電信行業有亞信聯創、億陽信通、聯信永益等。金融行業有恒生電子、浙大網新、金證股份、中聯集團等。
目前,鐵路行業的 IT 系統往往是鐵道部信息中心、鐵路科學研究院等鐵道部旗下的事業單位、下屬公司等承包研發,并運維。目前,只有太極股份、網宿科技等公司摸到鐵路 IT 的邊緣。
根據太極股份的 2011 年半年報,2011年上半年,“太極簽訂了鐵道部互聯網售票系統項目”(互聯網售票指的是 12306 網站)。對此,太極股份相關負責人表示,太極只負責 12306 網站的硬件集成,對于操作系統、數據庫、中間件、軟件的實施都不負責,網站的運維也不負責。
另據相關資料顯示,網宿科技為 12306 網站提供 CDN 加速服務。12306此次癱瘓與該公司技術是否有關,截至發稿,記者未能聯系上網宿科技相關人士。
“12306網站癱瘓,與 CDN 分發并無太大關系。”上述 CDN 技術工程師告訴記者, 1GB 帶寬的分發沒有任何問題。
“最重要的是對軟件系統架構進行優化設計,使其能支撐大并發量的交易,并支持平滑升級。這需要在優秀的系統架構師的主導下進行。軟件系統架構合理后,才能通過增加硬件和帶寬的方法,提升響應速度。”前文所述的大型集團企業 CIO 建議。
一位業內人士建議,只要 12306 將售票系統的數據接口對外開放,不少技術高的 IT 企業都會趁勢接入,很快成熟的系統就可以建立,而再運營一段時間,那么,12306網站將不會發生大規模癱瘓。
目前,和中航信的 travelsky 系統將機票銷售的數據接口對外開放,無論是攜程、易龍等互聯網 OTA,還是傳統的機票代售點等網站,都可以幫助銷售機票,而企業商最終接入的還是中航信的 travelsky。
“公平”方式的缺憾
數億人的春節大遷移,今年不是堵在火車站,而是堵在了網上。12306的癱瘓續寫了中國“一票難求”的古老故事。網友們紛紛在微博上嘲笑,12306堪稱史上最牛逼電子商務公司,半年就做到全球 ALEXA 排名 260,但用戶體驗爛到極點。
“網絡購票是鐵路系統售票 20 年歷史中,最公平、最透明的方式”。研究春運 20 年的國家發改委綜合運輸研究所副所長汪鳴認為。
早在 1987 年開始,春運票就開始供不應求,到了上世紀九十年代中期,因為巨大的春運運力缺口,大量的人開始從事倒票生意,“黃牛黨”開始出現。
“因為傳統窗口售票的方式,一個票務員就可以操縱數量眾多的車票,極容易滋生腐敗。”汪鳴分析,事實上,鐵道部系統也在不斷改進,力圖斬斷腐敗的源頭,增加售票的公開透明度。
去年,鐵道部開始推出電話購票。但這種購票方式是一種口頭的預訂,并沒有支付現金或者押金,很多人電話購票后,經常因為改變行程等種種原因不去拿票,造成巨大的資源浪費。
“網絡購票,網民不僅能夠及時查詢票務,還能夠在網上實現支付功能,還能及時地顯示售票情況,這相對窗口購票、電話購票,無疑是一種巨大的進步。”汪鳴表示,鐵道部去年年末還果斷地推出了實名網絡購票,并加大了電話門數,疏通購票“通道”。
對于網絡購票出現的癱瘓問題,汪鳴表示,中國鐵路客戶服務中心網站設計者——中國鐵道科學研究院明顯考慮不足。“應該要考慮到春運期間,成百上千萬的網民登陸時對網站造成的巨大負荷。”
對于民工網上購買車票的難題,汪鳴表示,這需要社會渠道幫助。在很多工地,超過 10 人以上的民工,最好能夠團體購票。“今年,不少高校,都是團體購票”,例如浙江不少高校,都是通過這一方式解決學生購票難題。
“其實,春運難題核心就是供求難以平衡,運力有限的鐵路無法滿足巨大的春運現實需求。”汪鳴介紹,這是世界級的難題,短時間內無法解決。
據鐵道路提供的數據顯示,1月 8 日至 2 月 16 日為期 40 天的春運,鐵路將發送旅客2.35億人次,同比增加 1352 萬人次,增長6.1%;日均達到 588 萬人次,同比增加 34 萬人次。然而,目前鐵路春運客運能力只有日均 382 萬人次,實際運力需求缺口達 206 萬人次。
“運力的巨大缺口無法在短時間內解決,只能從管理的角度去提高,為市民提供更為便捷、公平的購票通道。”汪鳴表示,鐵道部運力如果按照春運來設計,會造成巨大的資源浪費。
“此外,電話、網絡系統購票需要加強監管。”汪鳴表示,因為這套系統掌控在鐵道部門手中,“鐵道部應該加強透明度,隨時公布票情況,包括票務總額、售票情況、存票情況,杜絕鐵道部內部系統人員通過技術手段內部搗票”。
來自: 21世紀經濟報道