摘要 : 2月4日,春運的第一天!整個春運期間客流量預計將創(chuàng)歷史新高,達到28億人次。你是其中的一員嗎?無論你是否手握火車票,現(xiàn)在都可以打分了:你認為12306今年及格了嗎?
2月4日,2015年春運開始的第一天。
今年春運客流量預計將再創(chuàng)新高,達到突破歷史的28億人次。火車運輸線路從今天開始繁忙起來,12306則憑借提前預售度過了業(yè)務高峰。看來,給12306提前打分的時候到了!你是28億人次當中的一員嗎?今年回家的火車票是通過12306購買的嗎?你認為12306今年的表現(xiàn)及格了嗎?
我知道,你不是12306的粉絲。各大網(wǎng)站皆有粉絲,唯獨12306可能是沒有粉絲卻登錄者過億的網(wǎng)站。我知道,你可能是吐槽一族,不過打分之前先放下情緒,真的有必要了解這個和你的幸福感緊密相關的12306到底有了什么變化。
云很受用,但不是神器
你肯定要吐槽的是,每到春運購票期間12306就會癱瘓數(shù)次,這在技術上叫作無法有效應對高并發(fā)訪問。很多網(wǎng)友早就高呼:讓淘寶來解決吧,“雙11”,“秒殺”,人家不都沒問題嘛。
前幾天網(wǎng)上吐槽最多的就是,馬云的阿里云今年果真幫了12306的忙。公開的信息是12306租用了阿里公有云,將75%的余票查詢分流到公有云上,而火車票查詢業(yè)務占12306流量的90%以上,因而云有效緩解了12306自有系統(tǒng)的壓力。其實,諸如12306這種流量高峰低谷明顯的網(wǎng)站,最適合利用云的彈性和按需付費的支付方式,在保障業(yè)務高峰穩(wěn)定運行的同時,還節(jié)省了大量的系統(tǒng)采購成本。
網(wǎng)民們驚呼淘寶有了大用,依舊吐槽12306的低效、壟斷與不包容。不可否認,云是今年12306的一大進步,不僅在技術上更在包容度上,但真實情況并不像數(shù)字看到的那么簡單。是否買到火車票取決于購買而不是查詢,即火車票的交易系統(tǒng),阿里云支持的余票查詢流量雖大,但交易核心就目前公開信息來看還主要是12306對自身系統(tǒng)進行了升級。
復雜交易,一疏一堵
為什么12306不能照搬淘寶的“雙11”和“秒殺”技術呢?因為,12306的交易邏輯更為復雜,最主要的就是動態(tài)庫存的復雜對應關系。簡單理解就是,“雙11”和“秒殺”基本都是拍走一個,后臺庫存就減一個,這是簡單的一一對應關系。
但是火車票堪稱最復雜的商品交易邏輯,這源于車輛段內(nèi)的多個站點。以北京到上海高鐵G11為例,要途徑濟南、曲阜、南京、常州、上海共5站,而車票的品種卻包括多種排列組合。如果北京出發(fā),就包括北京到濟南、北京到曲阜……北京到上海5種車票,而濟南出發(fā)又包括4種,以此類推會出現(xiàn)15種不同的車票。如果賣出南京到常州車票,意味著后臺多種車票的數(shù)據(jù)庫都將同時發(fā)生變化,如果再遇退票,復雜程度超出想象,應對措施只有采取疏堵并施。
“一疏”,即12306采用了關鍵的Pivotal GemFire內(nèi)存計算技術,逐一改造了12306的余票查詢系統(tǒng)、訂單查詢系統(tǒng)以及訂票系統(tǒng)。內(nèi)存計算將硬盤數(shù)據(jù)讀寫升級為內(nèi)存數(shù)據(jù)讀寫,大大提高了計算性能,因而可以通過增加服務器部署規(guī)模,實現(xiàn)線性性能擴展。
“一堵”則是一種逆向思維的緩解方法,即為了避免流量過大引發(fā)系統(tǒng)癱瘓而設定上線閾值,閾值之外的請求必須排隊。不明白?知道圓珠筆的筆芯為什么這么細嗎?曾經(jīng)圓珠筆和鋼筆的筆芯一樣粗,可一書寫到2萬字,圓珠就會因磨損而出現(xiàn)漏油。當大家苦于無法找到即耐磨又便宜的圓珠材料時,日本發(fā)明家中田藤山郎卻出人意料地解決了這個問題:將筆芯油墨量控制在2萬字以前用完,這成為逆向思維的經(jīng)典案例。
移動購票,跟進BAT
今年12306還有一大看點,移動端購票比例大幅提升,移動端最高每天賣出130萬張車票,占整個互聯(lián)網(wǎng)售票數(shù)量的1/4。不知你今年是否是通過手機下的單?
對比一下淘寶就知道移動互聯(lián)勢頭正勁,在去年的“雙11”大促活動中,淘寶通過移動互聯(lián)網(wǎng)而產(chǎn)生的交易量幾乎占據(jù)半壁江山。12306作為最重要的電子商務網(wǎng)站自然也將手機購票客戶端作為一大發(fā)展方向。
其實這反應了12306 IT架構(gòu)之變。12306先是采用通用x86服務器替代原來的小型機,又在今年應用了浪潮SmartRack整機柜服務器逐步替代通用x86服務器,實現(xiàn)從RISC向IA架構(gòu)、從集中式到分布式架構(gòu),從通用到定制化、從國外到國產(chǎn)的轉(zhuǎn)變,這正是BAT走過的路。分布式系統(tǒng)更能應對彈性高并發(fā)的購票需求,而定制化的整機柜則能按需配置,并大幅降低總體擁有成本,在BAT等大型網(wǎng)站中也是從去年開始大規(guī)模流行的。據(jù)悉,今年12306移動購票的后臺系統(tǒng)就幾乎全都換成了SmartRack整機柜服務器,看來12306不僅應用了公有云、移動互聯(lián),還用上了最新的整機柜,這意味著12306正全面跟進BAT的腳步。
當然,BAT可以幫你搜索到你想要的信息,購買到你想要的商品,聯(lián)系到你想要聯(lián)系的人,但是,12306卻不能保證讓你能拿到春節(jié)期間回家過年的火車票,即使今年已經(jīng)達到28億人次的客流量。技術問題也許不是問題,而人為因素實在太復雜,觀念、體制、人口數(shù)量、地域經(jīng)濟的不平衡……你都有理由吐槽,但是區(qū)區(qū)一個網(wǎng)站可能只能解決甚至緩解技術問題。
那么,你認為12306今年及格了嗎?現(xiàn)在請打分。