精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

建設一個靠譜的火車票網上訂購系統

系統
春節將到,大家買不著車票,趕不上大年三十與家人團聚,急切心情可以理解。但是拍桌子開罵,只能宣泄情緒,解決不了實際問題。開發一套訂票系統并不難,難在應對春運期間,日均 10 億級別的洪峰流量。日均 10 億級別的洪峰請求,在中國這個人口全球第一大國,不算稀罕,不僅火車票訂票系統會遇到,而且電子商務在促銷時,也會遇到,社交網站遇到新聞熱點時,也會遇到。

春節將到,大家買不著車票,趕不上大年三十與家人團聚,急切心情可以理解。但是拍桌子開罵,只能宣泄情緒,解決不了實際問題。

開發一套訂票系統并不難,難在應對春運期間,日均 10 億級別的洪峰流量。日均 10 億級別的洪峰請求,在中國這個人口全球第一大國,不算稀罕,不僅火車票訂票系統會遇到,而且電子商務在促銷時,也會遇到,社交網站遇到新聞熱點時,也會遇到。

所以,能夠在中國成功運行的云計算系統,推廣到全球,一定也能成功。但是在美國成功運行的云計算系統,移植到中國,卻不一定成功。

如果我們能夠設計建造一套,穩定而高效的鐵路訂票系統,不僅解決了中國老百姓的實際問題,而且在全球高科技業界,也是一大亮點,而且是貼著中國標簽的前沿科技的亮點。

于是軟件工程師們獻計獻策,討論如何改進 12306 網上購票系統 [3]。其中比較有代表性的,有兩篇 [4,5]。

網友的評論中,有觀點認為,[4] 利用“虛擬排隊”的手段,將過程拉長負載降低,是網游的設計思路。而 [5] 利用緩存技術,一層層地降低系統負荷, 是互聯網的設計思路。

個人認為,[4] 和 [5] 并不是相互排斥的兩種路線,兩者著重解決的問題不同,不妨結合起來使用,取長補短。下面介紹一下我們的設計草案,追求實用,擯棄花哨。拋磚引玉,歡迎拍磚。

 

 

 

 

圖一。12306.cn 網站系統架構設想圖。

Courtesy http://i879.photobucket.com/albums/ab351/kan_deng/12306.png

圖一是系統架構圖,典型的“展現層”/ “業務層”/ “數據層”的三段論。

用戶接入有兩類,一個是運行在電腦里的瀏覽器,例如 IE,另一個是手機。

無論用戶用電腦瀏覽器,還是手機訪問 http://www.12306.cn 網站,用戶請求首先被網站的負載均衡器接收。負載均衡器連接著一群門戶服務器,根據各個門戶服務器的負載輕重,負載均衡器把用戶請求,轉發到某一相對清閑的門戶服務器。

門戶服務器的任務類似于收發室老頭兒,它只讀每個用戶請求的前幾個 bytes,目的是確定用戶請求的類型,然后把請求投放到相應類型的隊列中去。門戶服務器的處理邏輯非常簡單,這樣做的好處,是讓它能夠快速處理大批量用戶請求。

根據 [5] 的分析,12306 處理的用戶請求,大致分為三類,

1. 查詢。用戶訂票前,查詢車次以及余票。用戶下訂單后,查詢是否已經訂上票。

2. 訂票,包括確定車次和票數,然后付款。用戶付款時,需要在網銀等網站上操作。

3. 第一次訪問的用戶,需要登記,包括姓名和信用卡等信息。

三類請求的業務處理過程,被分為兩個階段,

1. 運行于緩存中的任務隊列。設置隊列的目的,是防止處理過程耗時太長,導致大量用戶請求擁塞于門戶服務器,導致系統癱瘓。

2. 業務處理處理器,對于每一類業務,分別有一群業務服務器。不同業務的處理流程,各不相同。

 

 

 

 

圖二。12306.cn 網站查詢和訂票業務流程設想圖。

Courtesy http://i879.photobucket.com/albums/ab351/kan_deng/12306-1.png

圖二描述了查詢和訂票,兩個業務的處理流程。登記業務流程從略。

查詢的業務流程,參見圖二上半部,分五步。這里有兩個問題需要注意,

1. 用戶發出請求后,經過短暫的等待時間,能夠迅速看到結果。平均等待時間不能超過 1 秒。

2. 影響整個查詢速度的關鍵,是“查詢服務器”的設計。

查詢任務可以進一步細化,大致分成三種。

1. 查詢車次和時間表,這是靜態內容,很少與數據庫交互,數據量也不大,可以緩存在內存中。

車次和時間表的數據結構,不妨采用 Key-Value 的方式,開發簡單,使用效率高。Key-Value 的具體實現有很多產品,[5] 建議使用 Redis。

這些是技術細節,不妨通過對比實驗,針對火車票訂票系統的實際流量,以及峰值波動,確定哪一個產品最合適。

2. 查詢某一班次的剩余車票,這需要調用數據庫中不斷更新的數據。

[5] 建議把剩余車票只分為兩種,“有”或“無”,這樣減少調用訪問數據庫的次數,降低數據庫的壓力。但是這樣做,不一定能夠滿足用戶的需求,說不定會招致網友的批評譏諷。

[4] 建議在訂票隊列中,增加測算訂票隊列長度的功能,根據訂票隊列長度以及隊列中每個請求的購票數量,可以計算出每個車次的剩余座位。如果 12306.cn 網站只有一個后臺系統,這個辦法行之有效。

但是假如 12306.cn 網站采用分布式結構,每個鐵路分局設有子系統,分別管理各個鐵路分局轄區內的各個車次。在分布式系統下,這個辦法面臨任務轉發的麻煩。不僅開發工作量大,而且會延長查詢流程處理時間,導致用戶長久等待。

3. 已經下單的用戶,查詢是否已經成功地訂上票。

每個用戶通常只關心自己訂的票。如果把每個用戶訂購的車票的所有內容,都緩存在內存里,不僅非常耗用內存空間,內存空間使用效率低下,更嚴重的問題是,訪問數據庫過于頻繁,數據量大,增大數據庫的壓力。

解決上述分布式同步,以及數據庫壓力的兩個問題,不妨從訂票的流程設計和數據結構設計入手。

假如有個北京用戶在網上訂購了一套聯票,途經北京鐵路局和鄭州鐵路局轄區的兩個車次。用戶從北京上網,由北京鐵路局的子系統,處理他的請求。北京鐵路局的訂票服務器把他的請求一分為二,北京鐵路局的車次的訂票,在北京子系統完成,鄭州鐵路局的車次在鄭州子系統完成。

每個子系統處理四種 Key-Value 數據組。

1. 用戶ID:多個 (訂單ID)s。

2. 訂單ID:多個 (訂票結果ID)s。

3. 訂票結果ID: 一個 (用戶ID,車次ID)。

4. 車次ID:一個(日期),多個 (座位,用戶ID)。

北京訂票服務器完成訂票后,把上述四個數據組,寫入北京子系統的數據庫,同時緩存進北京的查詢服務器,參見圖二下半部第6步和第7步。

鄭州訂票服務器完成訂票后,把上述四個數據組,寫入鄭州子系統的數據庫,同時緩存進北京的查詢服務器,而不是鄭州的服務器。

讓訂票服務器把訂票數據,同時寫入數據庫和查詢服務器的緩存,目的是讓數據庫永久保留訂票記錄,而讓大多數查詢,只訪問緩存,降低數據庫的壓力。

北京用戶的訂票數據,只緩存在北京的查詢服務器,不跨域緩存,從而降低緩存空間的占用,和同步的麻煩。這樣做,有個前提假設,查詢用戶與訂票用戶,基本上是同一個人,而且從同一個城市上網。

但是這里有個缺陷,某用戶在北京上網訂了票。過了幾天,他在北京上網,輸入用戶ID和密碼后,就會看到他訂購的所有車票。可是又過了幾天,他去了鄭州,從鄭州上網,同樣輸入用戶ID和密碼,卻看不到他訂購的所有車票。

解決這個缺陷的辦法并不麻煩,在用戶查詢訂票信息時,需要注明訂票地點,系統根據訂票地點,把查詢請求轉發到相應區域的子系統。

另外,每次訂票的時候,網站會給他的手機發送短信,提供訂票信息,參見圖二下半部第8步和第9步。

以上是一個初步設計,還有不少細節需要完善,例如防火墻如何布置等等。這個設計不僅適用于單一的集中式部署,而且也適合分布式部署。

或許有讀者會問,為什么沒有用到云計算?其實上述架構設計,為將來向云計算演變,留下了伏筆。

在上述架構設計中,我們假定每個環節需要用多少服務器,需要多大容量的數據庫,預先都已經規劃好。但是假如事先的規劃,低于實際承受的流量和數據量,那么系統就會崩潰。所以,事先的規劃,只能以峰值為基準設立。

但是峰值將會是多少?事先難以確定。即便能夠確定峰值,然后以峰值為基準,規劃系統的能力,那么春運過后,就會有大量資源冗余,造成資源浪費?

如何既能抗洪,又不造成資源浪費?解決方案是云計算,而且目前看來,除了云計算,沒有別的辦法。

Reference,

[1] 海量事務高速處理系統。

http://www.douban.com/note/195179318/

[2] 去你媽的‘海量事務高速處理系統’。

http://weibo.com/1577826897/y0jGYcZfW

[3] 火車訂票系統的設想。

http://weibo.com/1570303725/y0l9Y2mwE

[4] 鐵路訂票系統的簡單設計。

http://blog.codingnow.com/2012/01/ticket_queue.html

[5] 鐵路訂票網站個人的設計淺見。

http://hi.baidu.com/caoz/blog/item/f4f1d7caee09b558f21fe780.html

【編輯推薦】

  1. 告別Win7?給你N個用云操作系統的理由
  2. 2012開年巨獻:一款來自德國的云OS
  3. 春節回家曬照片 ipad+快盤最給力
責任編輯:Yeva 來源: ifanr.com
相關推薦

2011-01-24 15:37:32

火車票

2012-01-05 09:14:05

Firefox

2016-08-31 13:26:24

PythonPython3工具

2023-09-15 09:34:54

2012-01-05 13:14:42

火車票

2011-01-28 15:48:11

Chrome插件Page Monito火車票

2018-01-10 22:19:44

2023-06-09 09:54:36

攜程工具

2019-04-26 15:16:02

馬蜂窩火車票系統

2018-12-29 16:24:58

Python12306火車票

2012-01-05 10:23:33

IE9預訂火車票

2023-07-07 14:18:57

攜程實踐

2011-01-21 17:08:39

火車票

2011-01-21 15:53:31

火車票Sybase

2012-11-15 09:40:18

2023-06-28 14:01:13

攜程實踐

2022-09-09 15:49:03

攜程火車票組件化管理優化

2015-03-18 15:05:12

12306驗證碼

2022-04-27 13:36:18

12306鐵路12306

2018-01-02 09:56:04

Python12306火車票
點贊
收藏

51CTO技術棧公眾號

日韩av影片在线观看| 亚洲综合精品久久| 成人xvideos免费视频| 日日噜噜夜夜狠狠久久波多野| 一区二区三区无毛| 亚洲一二三四久久| 欧美日韩亚洲一区二区三区在线观看 | 香蕉视频免费版| 日韩中文字幕免费在线观看| 日韩国产欧美三级| 欧美老妇交乱视频| 久久美女免费视频| 亚洲一区二区三区四区电影| 色婷婷亚洲一区二区三区| 国产高清免费在线| 日av在线播放| 国产成人精品综合在线观看| 国产精品第一第二| 国产精品二区一区二区aⅴ| 欧美色图激情小说| 日韩av中文字幕在线播放| 天天干天天av| 激情开心成人网| 一区二区成人在线视频| 日韩一区二区三区高清| 日韩在线一区二区三区四区| 国产麻豆欧美日韩一区| 欧美激情区在线播放| 日韩一区二区三区四区视频| 日韩av影院| 日韩一级免费一区| 亚洲欧美久久久久| 超碰aⅴ人人做人人爽欧美| 亚洲精品欧美激情| 在线视频一区观看| 爱久久·www| 99久久精品费精品国产一区二区| 成人乱色短篇合集| 成人毛片一区二区三区| 国产精品毛片一区二区三区| 久久久久久97| 久草视频在线资源| 五月久久久综合一区二区小说| 亚洲香蕉在线观看| 中文字幕 亚洲一区| 91蜜桃臀久久一区二区| 日韩欧美国产精品一区| 色噜噜狠狠一区二区| 亚洲综合在线电影| 日韩欧美有码在线| 欧美成人xxxxx| 日韩欧美精品一区二区三区| 亚洲一区二区在线观看视频 | 91大神在线网站| 久久久精品免费免费| 久久精品aaaaaa毛片| 天天躁日日躁狠狠躁喷水| 不卡视频一二三四| 国产高清在线精品一区二区三区| 精品国产av一区二区三区| 韩国精品久久久| 91在线免费观看网站| 国产乱码精品一区二区| 国产自产2019最新不卡| 91亚洲一区精品| 精品国产伦一区二区三| 成人av在线看| 激情小说综合网| 天堂中文在线资| 久久欧美中文字幕| 日韩中文字幕av在线| 日本在线观看免费| 一区二区三区资源| 精品久久久久久无码中文野结衣| 久草在线中文最新视频| 欧美日韩在线第一页| 国产一级不卡毛片| 9999精品免费视频| 欧美mv日韩mv国产网站| 色天使在线视频| 日韩欧美精品| 超碰97人人做人人爱少妇| 久久婷婷国产麻豆91| 国产日韩欧美一区二区三区在线观看| 国产成人精品在线播放| 国产又粗又大又爽| www.色精品| 日韩欧美一区二区三区四区 | 午夜精品www| 天天干在线播放| 久久国产日韩欧美精品| 国产精品theporn88| 奇米影视888狠狠狠777不卡| 国产精品国产三级国产aⅴ中文| 国产女教师bbwbbwbbw| 在线男人天堂| 91精品国产免费久久综合| 久久久久麻豆v国产精华液好用吗| 欧美男gay| 久久99精品久久久久久噜噜| 99精品在线播放| 国产在线国偷精品产拍免费yy| 国产一区二区高清不卡 | 久久久久www| 在线能看的av| 国产乱人伦偷精品视频免下载| 久久久久久国产精品mv| 日本蜜桃在线观看| 欧美性猛交xxxxx水多| 中文字幕日韩久久| 奇米狠狠一区二区三区| 欧美国产在线电影| 在线观看xxxx| 97se亚洲国产综合自在线| 伊人婷婷久久| jizz内谢中国亚洲jizz| 精品欧美一区二区久久| 欧美h片在线观看| 免费日韩av片| 国产精品免费在线播放| 久久精品视频免费看| 91国模大尺度私拍在线视频| 美女久久久久久久久| 91精品婷婷色在线观看| 国产精品678| 亚洲欧美日韩成人在线| 亚洲一区视频在线观看视频| 亚洲午夜精品一区| 欧美军人男男激情gay| 2019中文字幕免费视频| www天堂在线| 最新日韩在线视频| 中文字幕22页| 久久在线视频免费观看| 国产精品久久久久久超碰| 性xxxx视频播放免费| 亚洲国产美女搞黄色| 午夜视频在线观| 天天综合国产| 国产日韩欧美夫妻视频在线观看| 国产高清在线观看| 色婷婷一区二区三区四区| 国产成人精品无码免费看夜聊软件| 激情久久中文字幕| 国产精品免费在线播放| 丰满诱人av在线播放| 精品电影一区二区| 久久久久久久久久久网 | 色88888久久久久久影院按摩| 大乳护士喂奶hd| 亚洲伦伦在线| 免费看成人片| 浪潮色综合久久天堂| 亚洲网址你懂得| 最近中文字幕免费观看| 国产日韩欧美麻豆| a在线观看免费视频| 日韩精品久久| 成人激情视频小说免费下载| 免费黄色电影在线观看| 91精品国产免费久久综合| 国产suv一区二区三区| 国产99精品国产| 加勒比成人在线| 亚洲第一福利专区| 国产精品激情av电影在线观看 | 九九久久久久99精品| 亚洲精品网站在线| 偷拍一区二区三区| 免费看污片的网站| 麻豆精品在线观看| 狠狠干视频网站| 久久综合五月婷婷| 国产成人精彩在线视频九色| 日本中文字幕视频在线| 日韩一级欧美一级| 国产精品视频一区在线观看| 国产精品污www在线观看| 在线免费看v片| 在线观看一区| 日韩黄色影视| 久久精品一级| 欧美一区二区三区四区在线| av一本在线| 精品久久国产字幕高潮| 天堂网中文字幕| 中文字幕一区二区三区四区不卡| 亚洲av无码成人精品区| 久久中文字幕一区二区三区| 一本色道久久综合亚洲精品婷婷 | 精品国产免费一区二区三区四区| 六月丁香在线视频| 亚洲同性同志一二三专区| 亚洲高清无码久久| 麻豆一区二区三| 精品国产一区三区| 婷婷综合在线| 久久久久久一区| 国产高清亚洲| 日韩av高清不卡| 日本aa在线| 一本一道久久a久久精品逆3p| 精品国产伦一区二区三区| 91久久奴性调教| 激情小说中文字幕| 亚洲国产精品成人综合 | 伊人网站在线观看| 亚洲在线成人精品| а天堂中文在线资源| 久久综合久久鬼色中文字| 性色av浪潮av| 日韩高清一级片| 波多野结衣综合网| 91精品动漫在线观看| 午夜精品一区二区三区在线观看 | 欧美第一黄网| 综合激情五月婷婷| 亚洲999一在线观看www| 国产91亚洲精品久久久| 91po在线观看91精品国产性色 | 你懂的视频欧美| 丁香婷婷久久久综合精品国产| www.久久.com| 国产激情综合五月久久| 久久男人天堂| 欧美精品videosex极品1| 日本美女高清在线观看免费| 国产亚洲成av人片在线观看桃| 婷婷av一区二区三区| 精品国产一区二区三区忘忧草| 一区二区三区播放| 欧美性videosxxxxx| 天堂а√在线中文在线新版| 亚洲电影一级黄| 国产一级做a爱免费视频| 日韩美女啊v在线免费观看| www久久久久久久| 国产亚洲短视频| 91中文字幕永久在线| 91在线观看一区二区| 国产+高潮+白浆+无码| 国产91精品免费| 欧美一级片在线免费观看| 国产一区二区三区在线观看免费 | 加勒比海盗1在线观看免费国语版| 大色综合视频网站在线播放| 日韩欧美在线电影| 成人a'v在线播放| 先锋影音一区二区三区| 欧美综合另类| 亚洲国产婷婷香蕉久久久久久99| 狠狠做深爱婷婷综合一区| 日本一区免费看| 欧美伦理在线视频| 91香蕉视频网址| 51精产品一区一区三区| 激情五月五月婷婷| 亚洲手机视频| 男人日女人逼逼| 久久久精品午夜少妇| 黄色三级视频在线| 久久99精品国产.久久久久| 天堂在线一区二区三区| 国产盗摄一区二区三区| 伦理片一区二区| 91毛片在线观看| 国产一区二区三区四区五区六区| 久久久电影一区二区三区| 国产精品久久免费观看| 中文字幕亚洲一区二区av在线| 日韩福利小视频| 亚洲午夜一二三区视频| yjizz国产| 欧美日韩一区二区三区不卡 | 国产综合色区在线观看| 国产日韩中文字幕在线| 一区三区自拍| 精品国产乱码久久久久软件| 国产一区二区三区网| 中文字幕免费在线不卡| 国产在线不卡| 最近免费中文字幕中文高清百度| 美女爽到高潮91| 中文字幕三级电影| 国产蜜臀97一区二区三区| 久草视频手机在线| 精品久久久久久久中文字幕| 最新国产中文字幕| 精品久久久久久亚洲综合网| 免费动漫网站在线观看| 久久综合久中文字幕青草| 深夜成人在线| 成人日韩在线电影| 日韩有码中文字幕在线| 懂色av一区二区三区四区五区| 日韩午夜一区| 午夜两性免费视频| www.成人在线| 午夜爱爱毛片xxxx视频免费看| 精品毛片网大全| 国产精品丝袜黑色高跟鞋| 亚洲免费视频网站| 97超碰资源站在线观看| 欧美综合国产精品久久丁香| 精品国产一区二| 视频在线精品一区| 激情综合中文娱乐网| 中文字幕国产免费| 久久综合精品国产一区二区三区| tube国产麻豆| 欧美少妇bbb| 色吊丝在线永久观看最新版本| 久久久精品中文字幕| 日本欧美不卡| 久久99国产精品| 韩日视频一区| 在线视频观看91| 国产精品麻豆欧美日韩ww| 国产一区二区99| 精品剧情在线观看| caoporn97在线视频| 国产精品亚发布| 国内亚洲精品| av片中文字幕| 不卡的电视剧免费网站有什么| 天堂网avav| 欧美老肥妇做.爰bbww| 国产爆初菊在线观看免费视频网站| 91国内免费在线视频| 亚洲精品一区二区三区在线| a级网站在线观看| 国产综合一区二区| 天天操天天摸天天舔| 欧美艳星brazzers| 成年人在线观看网站| 国产高清在线不卡| 欧美理论在线播放| 亚洲免费av一区二区三区| 久久毛片高清国产| 免费看一级视频| 亚洲视频在线观看免费| 小视频免费在线观看| 精品日韩电影| 日韩视频在线一区二区三区 | 99re8这里有精品热视频8在线 | 久久本道综合色狠狠五月| 亚洲视频综合| 国产精品无码毛片| 一本一道久久a久久精品| 日本天堂影院在线视频| 日韩av免费在线| 国产欧美日韩视频在线| 99热手机在线| 国产精品大尺度| 国产精品亚洲欧美在线播放| 操人视频在线观看欧美| 盗摄牛牛av影视一区二区| 日韩国产一级片| 91美女片黄在线观看91美女| 中文字幕一区在线播放| 一个人看的www久久| 99久久这里有精品| 成年丰满熟妇午夜免费视频| caoporn国产精品| 日韩精品一区不卡| 精品国产拍在线观看| 欧美久久一区二区三区| 免费在线观看视频a| 久久久蜜桃精品| 伊人免费在线观看| 久久久91精品国产| 成人午夜大片| 50路60路老熟妇啪啪| 中文字幕一区免费在线观看| 成人毛片视频免费看| 欧美亚洲激情在线| 青青草97国产精品麻豆| 色黄视频免费看| 日韩欧美一区视频| 九义人在线观看完整免费版电视剧| 99国产视频| 国产精品亚洲产品| 成年人视频软件| 精品久久久网站| 456亚洲精品成人影院| 91免费网站视频| 91视频精品在这里| 国产一区二区波多野结衣 | 在线一区av| 国产卡一卡二在线| 26uuu精品一区二区三区四区在线| 在线观看中文字幕av| 国a精品视频大全| 日韩欧美中字| 国产二级一片内射视频播放| 欧美日韩一区二区不卡| 国产三级电影在线播放| 天天爱天天做天天操| 久久综合九色综合97_久久久| 国产视频手机在线观看|