1 業務復雜度高于淘寶 1.1 動態庫存 上海-南京-北京: 買上海-北京,就是一張票 買上海-南京,南京-北京,就是兩張票 1.2 選座功能 下完單還能選座位 1.3 線上+線下 淘寶只能線上。 1
1 業務復雜度高于淘寶
1.1 動態庫存
上海-南京-北京:
- 買上海-北京,就是一張票
- 買上海-南京,南京-北京,就是兩張票
1.2 選座功能
下完單還能選座位
1.3 線上+線下
淘寶只能線上。
1.4 不停刷票
即使沒票了,還是會被刷。持續高并發業務,需要更綜合的高并發設計。
1.5 杜絕超賣
2 業務量
- 2020年高峰期:一天的請求量大概1600億,平均180萬/s
- 平均一年售出30億張,高峰期日售票能力達到了2000萬張
- 高峰期1秒可賣出1300張票。淘寶雙11: 58萬筆/秒
3 解決系統忙
3.1 提高處理能力: QPS和TPS
- 堆積硬件
- 軟件:Gemfire 商業軟件分布式內存數據庫
- 算法:模型、邏輯
3.2 削峰
- 業務:驗證碼、分時段、排隊(反正最后能買到就行,我等得起)
- 技術:限流、異步
4 模型設計+邏輯實現
4.1 余票查詢
記錄站站余票。一列火車有5個站,可拆分成4+3+2+1=10條站站記錄。
將賣票變成01二進制數的計算
4.2 座位購買
記錄座位銷售詳情。
一列火車有5個站A~E,1號座位: 0111(參照 4.1 最后的銷售詳情值),代表只剩A~B可買。
上面兩步要保證事務性。
【文章原創作者:美國服務器 http://www.558idc.com/mg.html提供,感恩】聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。