鐵道部12306網(wǎng)站癱瘓:網(wǎng)絡(luò)購票技術(shù)之罪
2012年春節(jié),鐵道部推出12306網(wǎng)站,進(jìn)行網(wǎng)絡(luò)實(shí)名購票。每一個(gè)返鄉(xiāng)人原以為能買著一張回家的火車票,但結(jié)果還是大失所望。 12306網(wǎng)站癱瘓了。大量用戶無法登錄,頁畫刷新時(shí)間長達(dá)30分鐘,定票付了款卻無法購票。不少購票者無奈地怒斥道,12306網(wǎng)站形同虛設(shè)。 12306網(wǎng)站癱瘓后,鐵道部相關(guān)負(fù)責(zé)人表示,將增加服務(wù)器與帶寬,改善網(wǎng)購登錄難的問題。 “即便增加了足夠的服務(wù)器與帶寬,但是軟件系統(tǒng)架構(gòu)不行,也無濟(jì)無事。”一位從事航空電子客票業(yè)務(wù)的人士說。 購票時(shí)限之錯(cuò)? 自元旦起,12306網(wǎng)站就處于半死不活的狀態(tài)。“前訪問用戶過多,請稍后重試!”這是大量用戶會(huì)碰上的無法登錄;還有不少用戶登錄之后,卻無法打開二級、三級頁面,只有在不停地刷新;一些幸運(yùn)的用戶登錄后成功付款,但卻功虧一簣,卻無法買票了。 對于“付款成功卻無法購票”的情況,12306官網(wǎng)表示,“這是由于網(wǎng)絡(luò)等原因?qū)е裸y行的支付結(jié)果數(shù)據(jù)沒有及時(shí)回傳至12306網(wǎng)站。” 而一位從事航空電子客票業(yè)務(wù)的人士認(rèn)為,這是12306網(wǎng)站的系統(tǒng)與銀行的支付系統(tǒng)連接不順暢,12306無法及時(shí)響應(yīng)銀行。 事實(shí)上,“付款成功卻無法購票”的現(xiàn)象也可能是由網(wǎng)絡(luò)購票的時(shí)限造成的。鐵道部規(guī)定,網(wǎng)絡(luò)購票需要在30分鐘內(nèi)完成,如果超時(shí),就會(huì)重新返回售票系統(tǒng),造成票沒買上而錢被扣除的現(xiàn)象。 目前,12306網(wǎng)站只支持工商銀行、中國農(nóng)業(yè)銀行、中國銀行、招商銀行和銀聯(lián)的網(wǎng)上銀行功能,不支持第三方支付公司。“支付方式太少了,很多用戶事先并不知道只能使用4家銀行的網(wǎng)銀。”一位進(jìn)行過網(wǎng)絡(luò)購票的人士表示,這會(huì)讓很多用戶花費(fèi)很多時(shí)間來支付,最終卻無功而返。 面對這樣的情況,鐵道部將網(wǎng)絡(luò)購票的支付時(shí)限延長至45分鐘。但這一招無異于“飲鴆止渴”。前文所述的專業(yè)人士對此表示,支付時(shí)間過長,會(huì)極大影響網(wǎng)站的安全性,給黑客與釣魚網(wǎng)站以可乘之機(jī)。 前文從事電子客票的人士告訴記者,為了保證支付的安全性,網(wǎng)絡(luò)支付有較強(qiáng)的時(shí)間限制。在一般情況下,提交訂單15分鐘內(nèi)必須完成付款,否則訂單取消。一般來說,從下單、支付到出票,最多在10分鐘以內(nèi)就可以完成了。 “一位用戶呆在網(wǎng)站上的時(shí)間就需要幾十分鐘,這會(huì)讓網(wǎng)站變得越來越擁擠。”一位IT運(yùn)維技術(shù)工程師告訴記者,網(wǎng)站對每位用戶的需求響應(yīng)慢,那么用戶從登錄到退出登錄的時(shí)間就需要更長,這樣的惡性循環(huán)會(huì)讓網(wǎng)站變得越來越不堪重負(fù)。 無力承受的高流量 1月3日,12306網(wǎng)站公布了“互聯(lián)網(wǎng)購票起售時(shí)間”,每天分別在8點(diǎn)、10點(diǎn)、12點(diǎn)和15點(diǎn)放票。但這一舉措更激化了網(wǎng)站與用戶的“矛盾”。 “這樣的定點(diǎn)放票會(huì)形成秒殺的效果。開始放票的1分鐘之內(nèi),訪問量會(huì)劇增,形成一個(gè)個(gè)高峰。”前文所述的航空電子客票人士說道,高峰時(shí),服務(wù)器需要交互的響應(yīng)量成幾何級數(shù)增長。 “12306系統(tǒng)癱瘓?jiān)谒y免。”一位CDN(內(nèi)容分發(fā)網(wǎng)絡(luò))行業(yè)人士認(rèn)為,從需求層面來說,火車票是剛性需求,不比購物。用戶買不到票就會(huì)不停地刷新,“今天買不到,明天再繼續(xù)”,需求得不到滿足的用戶會(huì)持續(xù)聚集在網(wǎng)站上,這會(huì)帶來連續(xù)的“峰值”。 據(jù)鐵路部門的預(yù)計(jì),從1月8日到2月16日,春運(yùn)期間鐵路將發(fā)送旅客2.35億人次,同比增加1352萬,日均達(dá)到588萬人次,但目前鐵路的春運(yùn)客運(yùn)能力僅為382萬。這意味著每天有200萬人次的缺口。 1月5日,本報(bào)記者查詢了Alexa排名,數(shù)據(jù)顯示,近一周,12306網(wǎng)站的“一周平均排名”為339,日均IP為194萬(每一個(gè)IP有可能是好幾個(gè)人訪問)。而國內(nèi)航空網(wǎng)絡(luò)售票網(wǎng)站“travelsky。com”的“一周平均排名”為11340,日均IP為8萬多。相比之下,火車票的需求遠(yuǎn)大于機(jī)票。 #p#page_title#e# 一位CDN技術(shù)工程師告訴記者,從行業(yè)經(jīng)驗(yàn)來看,春運(yùn)期間,12306的并發(fā)量(同時(shí)在線訪問量)達(dá)到1GB(1GB=1024MB,1MB=1024KB,1KB=1024字節(jié)),而一般來說,每個(gè)人一次性訪問只需要花費(fèi)2KB左右,有時(shí)候甚至只有幾個(gè)字節(jié)。這意味著峰值時(shí),12306網(wǎng)站的同時(shí)在線訪問人數(shù)高達(dá)500多萬。 這位技術(shù)工程師舉例道,網(wǎng)上足球直播的視頻的并發(fā)量達(dá)到幾十GB,但由于傳遞的都是靜態(tài)的內(nèi)容,視頻網(wǎng)站服務(wù)器需要的“處理能力”只是幾十MB。但是,12306網(wǎng)站交互的是動(dòng)態(tài)信息(查詢、定票),所有的訪問請求最終都需要12306網(wǎng)站的服務(wù)器作出響應(yīng),1GB就需要網(wǎng)站服務(wù)器擁有處理1GB訪問的能力。 一位大型集團(tuán)企業(yè)的CIO(首席信息官)根據(jù)其多年的工作經(jīng)驗(yàn)判斷,此次12306網(wǎng)站癱瘓是系統(tǒng)架構(gòu)規(guī)劃的問題,導(dǎo)致不能有效支持大并發(fā)量集中訪問。同時(shí),12306在IT管理上也有問題,未能進(jìn)行有效的壓力測試和運(yùn)行模擬。 12306癱瘓:技術(shù)之罪? 重硬輕軟 據(jù)了解,12306網(wǎng)站于2011年6月1日正式上線,到春運(yùn)也不過半年時(shí)間。 “12306網(wǎng)站只是在高鐵、動(dòng)車上進(jìn)行嘗試,之前并沒有遇到春節(jié)這樣巨大訪問量的經(jīng)驗(yàn)。不僅沒有做過模擬,并且一上來就是全國性的訪問,系統(tǒng)癱瘓?jiān)谝饬现小?rdquo;一位行業(yè)人士說。他告訴記者,電信、金融等行業(yè)上新的大規(guī)模系統(tǒng)時(shí),在壓力測試之外都會(huì)進(jìn)行區(qū)域試點(diǎn)。 12306的官方網(wǎng)站顯示,該網(wǎng)站是鐵道部信息中心和中國鐵道科學(xué)研究院共同開發(fā)的。據(jù)鐵道部信息中心的一位技術(shù)人員透露,12306網(wǎng)站的研發(fā)與運(yùn)維已經(jīng)單獨(dú)成為了一個(gè)機(jī)構(gòu),歸屬于鐵道部信息中心管理。 據(jù)業(yè)內(nèi)人士透露,12306網(wǎng)站是由鐵道科學(xué)研究院電子所負(fù)責(zé)開發(fā)和維護(hù)。鐵科院是鐵道部下屬企業(yè),電子所是鐵科院下屬單位,該所還負(fù)責(zé)鐵路售票系統(tǒng)的開發(fā)和維護(hù)。鐵路行業(yè),純粹的軟件并不受重視,基建、大型裝備和各種硬件等“賺錢”、看得見的設(shè)備鋪天蓋地。 “要靠硬件來實(shí)現(xiàn)軟件的價(jià)值,這種思路使得鐵道部的IT技術(shù)實(shí)力很難得到提升。”上述行業(yè)人士表示。 目前鐵路行業(yè)還沒有民營的系統(tǒng)集成商也可以側(cè)面印證鐵路行業(yè)IT技術(shù)落后。在IT技術(shù)比較發(fā)達(dá)的電信、金融行業(yè),國內(nèi)就存在多家系統(tǒng)集成商。電信行業(yè)有亞信聯(lián)創(chuàng)、億陽信通、聯(lián)信永益等。金融行業(yè)有恒生電子、浙大網(wǎng)新、金證股份、中聯(lián)集團(tuán)等。 目前,鐵路行業(yè)的IT系統(tǒng)往往是鐵道部信息中心、鐵路科學(xué)研究院等鐵道部旗下的事業(yè)單位、下屬公司等承包研發(fā),并運(yùn)維。目前,只有太極股份、網(wǎng)宿科技等公司摸到鐵路IT的邊緣。 根據(jù)太極股份的2011年半年報(bào),2011年上半年,“太極簽訂了鐵道部互聯(lián)網(wǎng)售票系統(tǒng)項(xiàng)目”(互聯(lián)網(wǎng)售票指的是12306網(wǎng)站)。對此,太極股份相關(guān)負(fù)責(zé)人表示,太極只負(fù)責(zé)12306網(wǎng)站的硬件集成,對于操作系統(tǒng)、數(shù)據(jù)庫、中間件、軟件的實(shí)施都不負(fù)責(zé),網(wǎng)站的運(yùn)維也不負(fù)責(zé)。 另據(jù)相關(guān)資料顯示,網(wǎng)宿科技為12306網(wǎng)站提供CDN加速服務(wù)。12306此次癱瘓與該公司技術(shù)是否有關(guān),截至發(fā)稿,記者未能聯(lián)系上網(wǎng)宿科技相關(guān)人士。 “12306網(wǎng)站癱瘓,與CDN分發(fā)并無太大關(guān)系。”上述CDN技術(shù)工程師告訴記者, 1GB帶寬的分發(fā)沒有任何問題。 “最重要的是對軟件系統(tǒng)架構(gòu)進(jìn)行優(yōu)化設(shè)計(jì),使其能支撐大并發(fā)量的交易,并支持平滑升級。這需要在優(yōu)秀的系統(tǒng)架構(gòu)師的主導(dǎo)下進(jìn)行。軟件系統(tǒng)架構(gòu)合理后,才能通過增加硬件和帶寬的方法,提升響應(yīng)速度。”前文所述的大型集團(tuán)企業(yè)CIO建議。 一位業(yè)內(nèi)人士建議,只要12306將售票系統(tǒng)的數(shù)據(jù)接口對外開放,不少技術(shù)高的IT企業(yè)都會(huì)趁勢接入,很快成熟的系統(tǒng)就可以建立,而再運(yùn)營一段時(shí)間,那么,12306網(wǎng)站將不會(huì)發(fā)生大規(guī)模癱瘓。 目前,和中航信的travelsky系統(tǒng)將機(jī)票銷售的數(shù)據(jù)接口對外開放,無論是攜程、易龍等互聯(lián)網(wǎng)OTA,還是傳統(tǒng)的機(jī)票代售點(diǎn)等網(wǎng)站,都可以幫助銷售機(jī)票,而企業(yè)商最終接入的還是中航信的travelsky #p#page_title#e#