從大麥網架構學到的東西
業務特點
大麥業務鏈條涵蓋了從 B 端生產、C 端銷售、現場換驗的全套流程。其業務架構也經過幾個階段的發展:
-
第一階段:保障不健全、設施不完善;
-
第二階段:支持部分大型搶票需求;
-
第三階段:“體系化” 承接所有大型搶票需求;
-
第四階段:“常態化” 體驗優化;
第一階段
此時的大麥架構還在大麥自己的 IDC 內,主要是原有大麥技術架構承擔需求。此時的架構存在以下幾個問題:
-
保障設施不健全:大麥 IDC 機房硬件、快遞均有限制,DB 還是 Sql Server,很多庫是單庫,不能應對大型搶票時的挑戰;
-
預案、限流不健全:系統在面對高流量時,沒有自我保護措施;
-
監控運維手段零散:定位問題、解決問題耗時長;
解決方案
這一階段主要是一些零散解決方案,針對問題解決。比如搭建簡易版限流方案,做性能優化點,整體上未體系化解決問題。
第二階段
第二階段由於已經被阿里收購,所以架構重構直接切入阿里域內解決方案,逐步替換掉老系統。
這一階段的關鍵就是新老方案的遷移:
-
APP 鏈路改造:技術改造重點放在無線端,所有 APP 流量先進入阿里域,再路由到大麥 IDC,讓阿里機房抵擋大量流量;
-
藉助阿里基礎運維設施:由於入口流量直接進入阿里域,降級、限流的動作可以依賴於阿里服務治理平臺能力做;
-
建立搶票預案:圍繞於大型搶票場景做預案建設,比如商詳頁增加 tair 緩存,靠 tair 抗住阿里域流量,建設流量打到大麥 IDC;
第三階段
第三階段針對於搶票流程上的系統做了體系化升級,完善了搶票流程和可靠保障機制。升級後的架構可以承接住所有大型搶票需求,用戶體驗有所提升。
優化動作:
-
精簡了搜索 response 過大的問題,降低了對寬帶的壓力;
-
在阿里域內,大型搶票選座流量直接打到了阿里域內,採用異步和類似 ConcurrentHashMap 的平衡機制,解決了大麥 IDC 選座的緩存一致性問題;
-
繼續完善阿里域內交易鏈路功能,下單接口全部放在阿里域內,下單之後訂單同步到大麥 IDC 內服務履約;
保障流程:
大麥主要是票務平臺,主要保障的黃金鍊路就是搶票,針對於這個鏈路需要建立可靠性保障和 SOP。
搶票分爲搶票前、搶票中、搶票後等環節:
-
搶票前:重點是由業務方搶票申報,再由技術方確認是否安排預演或壓測,由業務方判斷預案執行範疇及風控級別;
-
搶票中:重點監控和過程中的應急處理,每逢大促,各個角色聚集一起,各司其職;
圍繞於搶票流程,可靠性保障包括:預案 / 預演 / 容量等專項;
-
預案建設:已有成熟的流程不再安排預演,新玩法需要模擬搶票,提前暴露問題,並建立體驗問題預案;
-
容量保障:技術拉取全鏈路最近類似項目壓測數據作爲基礎數據,和線上真實流量做評估,分析搶票環節是否可以順利支撐,是否存在性能瓶頸,是否需要做限流;
-
預案執行:在全鏈路中找到核心場景,如:首頁搜索、商品詳情、票務選座、交易下單、票務庫存、訂單服務、無線端等場景建立預案。同時將高頻使用緩存信息在活動開始 30 分鐘預熱到緩存中;
-
問題覆盤:針對於每次活動出現的問題、客服反饋、線上問題進行收集,組織覆盤,並將 todo 落實到 action 上,關注 action 執行進度;
第四階段
在進行了全鏈路系統性完善之後,我們依然不能說肯定不會出現宕機的問題。因爲搶票環節註定是少數人可以搶到票,搶不到票的可能在輿情瘋狂吐槽。爲解決這些問題,我們需要爲真正的用戶提供極致體驗。
新交易系統上線,融合了大麥交易系統和阿里星環平臺,渲染接口、下單接口基於星環實現大麥特性擴展。
星環帶來的優點有 2 點:
-
依託於共享基礎能力,除了可以複用共享能力外,還可以參考主站交易的大促方案,比如限流、監控日誌、問題排查等。基於星環可以實現未支付關單等個性化能力定製,提高研發效率;
-
結合集團風控體系,人機識別、定製策略等對非法用戶進行了二次攔截,讓真實用戶搶票體驗更好,大大提升了真實用戶購買率;
爲摸清交易鏈路的性能水位,需要做到性能常態化,每月定時執行壓測、結合當月各項系統功能,評估壓測場景和壓測目標,壓測完成後,更新鏈路現狀,爲搶票提供有效數據支撐。
之前的可靠性保障規範不完善,監控、預案、入口不統一。所以建立預案自動化平臺,運營在配置搶票活動時【搶票開始前】,可以設置一些預案;在【搶票進行中】可以對核心場景進行統一視圖監控,並且有能力實現人爲干預和控制;在【搶票結束後】提供歷次搶票數據,供分析,幫助運營自助完善,實現自動化流程。
比如針對於商詳頁,有 6-10 項降級預案(包括本地緩存或 tair 緩存、三方依賴接口限流、異常降級等),每個預案設置的值,執行時間都有差異,每次降級操作都需要人工經驗判斷,操作繁瑣。這裏需要實現自動化或系統容錯實現降級。
總結
經過以上幾個階段,大麥從最開始的 “原始” 狀態進化到了 “常態化” 流量壓測、預案執行新階段,系統可靠性提升,用戶體驗提高。後續還需要在項目熱度智能分析、風控自動調節等方向進行持續優化。
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/kMUje6j5B1MffFv29kSbUA