京東亮相全球架構師峰會 揭秘交易系統618保衛戰
京東近日出席ArchSummit全球架構師峰會深圳站活動,京東商城交易平臺架構師李尊敬發表了主題為《京東交易系統618保衛戰》的主題演講,從壓力測試、全鏈路監控、多中心交易等方面,與在場的技術人士分享了京東交易系統在618大促中的優異表現,充分展示了京東成熟的技術對業務高速增長的可靠保障,以及對用戶體驗的提升。
猶如實戰的壓力測試
在618備戰環節,壓力測試(簡稱“壓測”)是檢測系統穩定性的必不可少的環節之一,在勝利完成數次618大促的過程中京東壓測也經歷了由早期工具化向平臺化的轉變。目前,京東壓測平臺DPMP已實現了Session共享、統一數據存儲、多用戶并行執行、結果實時展示等功能。DPMP以多控制器、多節點的辦法,在不同城市IDC均有機器部署,在底層已經封裝完畢,只需要編寫壓測腳本、定義邏輯即可實現。
京東通過歷年的大促備戰積累了豐富的壓測經驗。壓測的前提條件是流量隔離,通常可以先進行單臺壓測,再進行集群壓測。前者可調測參數實現單臺性能***,并可評估集群理論上限;后者會做一對一的壓測,將一臺壓測機器對應一臺服務器,確保流量***化。此外,在壓測的細分上,還可以通過讀流量壓測進行頁面邏輯的測試,通過寫流量壓測檢驗應用服務器,以此了解每臺服務器的實際抗壓能力。
京東每年在大促前夕,都會進行實戰演練。通過技術手段積累一定的訂單量,然后“開閘放水”,大量訂單突然涌入系統,觀察從下單到發票打印等各個環節的訂單處理時間,進行壓力測試。由于實戰演練都是在真實訂單的基礎上完成,因此對于整個系統的檢測與優化都具有重要意義,是整個交易系統備戰工作的重要環節。
全方位確保交易系統穩定
除了壓力測試外,在京東618保衛戰中,全鏈路監控也會對系統穩定性的保障起到至關重要的作用。為此,京東開發了交易天眼系統,通過它可以一目了然地監控到購物車、結算頁、下單后、訂單中心等基本流程在不同渠道(如PC/手機/微信、Web/Sdk)、不同機房的運行狀況。李尊敬表示,目前此監控系統與服務操作已經整合,單擊某個問題節點,就可以直接進行服務切換,快速解決節點問題,確保用戶交易的順利完成。
同時,京東的多中心交易系統就猶如 “城市加油站”,它遵循了同機房內流量閉環(不同機房流量不穿插)、路由一致性(一個用戶只能在一個交易中心)、多中心數據延遲監控、多寫最終一致性的原則。京東多中心交易系統能夠在大促流量暴增時,讓用戶訪問就近的交易中心,從而實現分流,優化用戶在交易過程中的購物體驗,也提升了京東交易平臺的異地容災與備份能力。
從618備戰的壓力測試,到京東的多中心交易系統,無論從技術手段的實施還是系統平臺的搭建,京東都體現出成熟的技術,保障了618海量交易的順利進行。而作為中國***的自營式電商企業,京東一直在通過技術驅動業務升級,并將自身的經驗與優勢對外開放,促進中國電商以及互聯網行業的不斷發展,為用戶帶去更加優質的購物與生活體驗。