paulwong

          討論火車票訂購網(wǎng)站架構(gòu)

          提交訂票訂單的處理流程如下:
          1)用戶通過瀏覽器訪問系統(tǒng)URL
          2)界面集群F5將請求轉(zhuǎn)發(fā)至某一節(jié)點,通過比較用戶數(shù)據(jù)庫的內(nèi)容進行身份鑒權。
          3)鑒權成功后進入訂票,提交訂票訂單(查詢流程暫不討論)界面顯示請等待
          4)訂票消息被發(fā)送至總線部件(接口可用web Service、RMI、甚至自定義協(xié)議都可以)
          5)總線收到訂票消息、去Cache集群查詢相關車次
          6)Cache根據(jù)自身維護的車次余票表,返回查詢結(jié)果,如果有余票,轉(zhuǎn)7)。如果無票了,則總線返回界面集群“沒票了”,界面提示用戶明天再試。
          7)若有余票,則總線返回界面集群“正在出票,請等待”,并將訂票請求壓入隊列。且發(fā)消息至Cache,告訴CACHE將訂票請求加入隊列。
          8)Cache收到總線隊列增加1個的消息,將自身維護的對應車次余票數(shù)減1個。
          9)總線另一線程負責從隊列中取消息,并發(fā)送至出票部件。
          10)出票部件產(chǎn)生訂票結(jié)果,并修改數(shù)據(jù)庫,發(fā)送“訂票成功”消息回總線。
          11)總線將訂票成功消息直接回傳至界面集群。
          12)用戶看到訂票結(jié)果。

           

          posted on 2012-01-06 11:10 paulwong 閱讀(362) 評論(0)  編輯  收藏 所屬分類: 分布式

          主站蜘蛛池模板: 修武县| 房产| 拜泉县| 西平县| 常德市| 陈巴尔虎旗| 卢龙县| 临湘市| 乌什县| 宜宾县| 巴里| 阳朔县| 马公市| 普陀区| 上杭县| 建湖县| 兖州市| 察雅县| 淮滨县| 黑山县| 都昌县| 文成县| 东乡| 稻城县| 璧山县| 日照市| 大化| 那曲县| 孝感市| 鸡东县| 马关县| 龙井市| 礼泉县| 寿光市| 大英县| 宽城| 芜湖县| 汨罗市| 施甸县| 山阴县| 绍兴市|