鯨品堂|擁抱云原生:江蘇移動訂單中心實踐

2022-06-27 74

近日,浩鯨科技承建的江蘇移動訂單中心產品順利通過信通院 “云原生業務應用成熟度”優秀級(L4)的認證評估,成為國內首個通過該認證的業務應用。


以下摘自《云原生能力成熟度模型 第2部分:業務應用》:


--云原生:云原生是面向云應用設計的一種思想理念,充分發揮云效能的最佳實踐路徑,幫助企業構建彈性可靠、松耦合、易管理、可觀測的應用系統,提升交付效率,降低運維復雜度。


--云原生業務應用成熟度模型:從企業業務應用基礎設施域、應用研發域以及服務治理域等三個能力域、二十個過程域綜合評估企業業務應用在彈性、高可用、自愈性、可觀測性以及自動化等五個維度的云原生能力成熟度水平。


這也標志著該產品的云原生業務應用架構已達到國內領先水平,今天我們與大家一起分享浩鯨科技基于云原生研發的訂單中心產品,了解在當前形勢下,訂單中心如何解決高可用和業務發展變化快的矛盾。


建設背景:業務發展變化快


隨著移動互聯網進入5G時代,O2O、秒殺、團購、直播帶貨、新零售等新商業模式不斷涌現,運營商市場也從傳統的個人家庭用戶拓展到政企用戶多樣性的業務中,傳統業務和新型業務間的融合將更加緊密,訂單模式提出新的支撐要求。

這種創新融合發展的趨勢,對運營商的訂單服務帶來了新的挑戰:

隨著政企等新興業務的拓展,訂單量增長迅速,原有應用+數據庫的架構面臨著很大的壓力,一方面,煙囪式的應用難以快速橫向擴展,另外一方面,需要引入新的數據組件緩沖數據庫壓力。


秒殺、直播帶貨等新興業務帶來訂單量在短時間內的突增,如何應對短時間內的高峰對主機資源的要求又能盡量降低擴容成本?需要考慮在系統過載的情況下能對自身的服務和外部的請求都進行取舍,保障核心服務的穩定性,實現系統的韌性。


為了搶占新市場,需求交付周期越來越短,版本上線愈發頻繁,傳統的手工作坊式的研發交付模式已經不能滿足業務交付要求了,需要在DevOps理念下引入研發效能工具體系。


訂單中心系統日益龐大,涉及到復雜的技術組件和架構,特別在面向政企業務支撐過程中,非標準、長流程及多系統協同的場景非常普遍,一旦訂單中心自身或周邊系統異常,出現各種組件的連鎖反應,產生大量的告警,如何快速定位問題根因,如何實現系統自愈、實現業務層面無感知,如何以可視化的方式立體化呈現整個系統、實現數字孿生。


問題解決之道:擁抱云原生


為了解決以上難題,浩鯨科技訂單中心產品圍繞全面云化、微服務、DevOps、智能運維,通過技術發展驅動IT支撐系統為業務提供創新價值,從四個方面全面實現云原生架構:

圖片關鍵詞

全面云化:

應用完成容器化改造,基于云原生PaaS平臺,適配磐基底座,使用云原生的技術組件。


微服務:

領域驅動設計指導微服務改造,訂單中心拆分成若干個微服務線,構建“管、診、治”微服務治理體系,提供可視化服務編排能力。


DevOps:

構建研運一體化的工具體系,實現訂單中心的敏捷研發、快速交付、縮短迭代周期,快速響應客戶需求。


智能運維:

實現多維監控與告警,業務與系統的監控聯動和統一展示,支撐故障的快速定位與恢復,實現常態化故障攻防演練。


云原生總體架構


構建研運一體化的工具實現敏捷研發、快速迭代。通過訂單中心的微服務拆分和云原生架構及灰度發布機制,實現升級或故障不影響業務,通過多維監控快速發現問題,通過調用鏈快速定位問題,通過統一的服務治理和自動化的容器調度實現系統的彈性伸縮,確保訂單中心7*24小時高可用。

圖片關鍵詞

訂單中心自底向上可分為基礎設施層、數據層、應用服務端、應用客戶端,還有統一監控運維中心:

基礎設施層:訂單中心運行于虛擬化的基礎設施上,平臺PaaS組件運行在虛擬機上,業務應用運行在容器上。


數據層:訂單中心大量采用云原生PaaS組件,包括redis、MQ、ElasticSearch等,降低數據庫壓力的同時保證數據層的高可用。


應用服務端:基于微服務化構建了多條微服務線,通過構建訂單中心的微服務網關實現多條微服務線的統一服務治理,確保訂單中心的高可用。


應用客戶端:多渠道多類型的客戶端訪問請求,先通過Nginx再進入訂單中心。訂單中心內部部署了生產中心、灰度中心和災備中心,Nginx主要用于多中心之間的切換。


統一監控運維:構建研運一體化工具實現敏捷研發、快速迭代,通過統一日志和運維監控實現業務和系統的多維統一監控和展示,通過調用鏈實現問題的快速定位。


云原生應用實踐


云原生實踐 1
云原生PAAS平臺
底層PaaS平臺都使用云原生組件,如Redis、MQ、ES等,確保底層PaaS組件的高可用。

圖片關鍵詞

使用Redis緩存配置數據和熱點實例數據。訂單首次查詢時將物理庫查詢結果加載到緩存中,在途訂單存入熱點緩存集群,竣工存入普通緩存集群,后續訂單查詢先從緩存查詢,通過這種方式可以大大減少數據庫的訪問壓力。

將訂單及其擴展信息中強搜索需求的索引字段同步到ElasticSearch后,就可以將查詢服務單獨剝離出來,從而在不影響訂單流程運轉的同時,提升訂單查詢效率,訂單查詢性能從600筆/s提升到3000筆/s。

使用MQ做訂單收單,通過消息服務實現削峰填谷,提升訂單收單效率;利用MQ實現異步接口日志消費;通過消息服務實現訂單多中心之間的緩存同步。

云原生實踐 2
微服務化
按照領域驅動設計(DDD)方法論,訂單中心按照業務領域拆分成松耦合的若干微服務線,各司其職,減少關聯影響,縮短迭代周期。數據庫也做相應拆分,減少故障的影響面。如下圖所示,訂單中心拆分成集團號卡、省內號卡、寬帶、集客、電子協議、調度等微服務線,每條微服務線都有自己的數據庫,從而實現了微服務線之間的應用隔離和數據隔離,可按需靈活擴展。
圖片關鍵詞圖片關鍵詞

云原生實踐 3
微服務治理
訂單中心使用微服務網關實現服務治理,使用Spring Cloud Gateway框架,再加上認證服務和微服務管控平臺SCP(Sentinel)的配套,實現訂單中心多條微服務線統一的安全鑒權、業務分流、服務跟蹤、監控診斷、限流、熔斷、降級等服務治理能力,使用策略配置實現自動化的流量管理,實現服務的可管理、可觀測和自動化運維。

圖片關鍵詞

微服務治理關鍵能力:

服務熔斷:訂單中心的服務可以配置,當其下游服務單位時間內調用失敗次數達到閥值時,防止整個系統出現連鎖反應甚至雪崩,暫時停止對該服務的調用。


服務限流:當入口請求 QPS 超過服務配置的閥值時,如瞬時出現高并發訂單查詢請求時,訂單查詢服務可以配置對某些渠道的查詢請求進行限制,以保證本服務不被壓垮。


服務降級:如上圖所示,當訂單中心的服務壓力達到一定程度時,訂單中心配置了服務降級策略,對容忍度高的服務進行降級,如對查詢服務降級,以保證訂單創建服務等核心服務的穩定性。


云原生實踐 4
研運一體化
引入DevOps研運一體化工具,實現需求管理、迭代計劃、源代碼管控、源代碼編譯打包、靜態檢測、生成鏡像、自動化測試、持續發布部署、全棧監控、自動化運維的研發運維全流水線的工具支撐,實現業務系統的敏捷研發、快速發布上線、縮短迭代周期,快速響應客戶需求。

圖片關鍵詞

云原生實踐 5
多活/灰度切換
訂單中心版本上生產前首先要在灰度中心完成驗證。版本在灰度中心發布后,調整路由策略,切換一部分業務流量到灰度中心上,運行2天驗證沒問題后再正式發布到生產中心。

圖片關鍵詞

多活/灰度切換關鍵能力:

灰度路由切換:新版本在灰度中心發布后,調整路由策略,切換一部分業務流量到灰度中心上,運行2天驗證沒問題后才正式發布到南京中心。


多中心緩存同步:灰度發布期間,兩個中心間的緩存數據需要同步,通過MQ相互通知機制把變動數據加載到各中心緩存,并通過數據庫日志、消息監控等額外手段保證多中心緩存同步的正確性和一致性,實現了生產中心和灰度中心的無縫切換。


數據層版本控制:數據庫表中都有版本號字段,可以識別新舊版本涉及的數據,可用于問題定位和版本回退,實現了數據層的灰度發布。


云原生實踐 6
多維監控和運維
通過系統監控、日志的統一采集分析,實現系統多維監控的可視化和自動告警。通過調用鏈快速定位問題??筛鶕Y源和業務指標或故障情況自動觸發應用容器的彈性伸縮,確保業務7*24小時不間斷運行。

圖片關鍵詞

多維監控運維關鍵能力:

通過統一日志采集實現日志監控及調用鏈輸出,通過調用鏈快速定位問題。


具備業務和系統的綜合監控展示分析,實現業務和系統的監控聯動,便于快速定位異常原因。


支持告警的閉環管理:支持告警的歸集、通知相關責任人、告警超時提醒、問題處理和記錄、告警恢復確認、告警關閉。


運維人員通過體系化的運維工具,可在5分鐘內快速找到問題根因并處理之,極大縮減整體故障修復所需時間。


云原生實踐 7
常態化的故障注入
訂單中心系統日益龐大,升級或潛在故障難以評估影響。通過常態化的主動故障注入,驗證系統架構的容錯能力,提前發現潛在問題,迭代改進架構和運維方式,最終實現業務韌性。

圖片關鍵詞

訂單中心解決方案:模擬訂單中心突發高并發訂購或查詢和偶發性的故障,定制了以下故障演練方案:(以下舉例的常見演練場景)
CPU滿載:

場景說明:模擬部分節點cpu滿載,導致cpu平均使用率保持高水位


演練效果:系統監控到cpu負載高后,自動水平擴容節點,直到cpu負載保持正常水平

服務延遲:

場景說明:模擬部分節點的服務延遲,導致服務整體時延偏高


演練效果:系統自動水平擴容節點,直到時延回落到正常水平

Pod終止:

場景說明:模擬部分節點因故障導致服務終止,實際停掉部分節點


演練效果:系統發現部分節點停機,自動拉起新的Pod節點


云原生建設帶來的價值


1、通過引入DevOps,實現訂單系統的敏捷研發、快速發布上線、縮短迭代周期,快速響應客戶需求。

實現業務系統的敏捷研發,特別是政企長流程多樣化業務的快速支撐,需求平均上線周期縮短50%。


通過在線灰度發布實現版本的提前驗證,實現了生產和灰度的無縫切換。


通過實現版本的快速發布上線、縮短迭代周期,一周上線一個版本。


每月研發產能增加50%。


2、云原生技術實現高性能的同時降低了數據庫壓力,通過redis緩存配置數據和熱點實例數據,通過使用ES實現訂單查詢的提速,通過使用MQ提升訂單收單效率、實現多中心緩存同步。

訂單創建性能提升到5萬筆/分鐘。


訂單查詢性能提升到3000筆/秒。


3、滿足秒殺、直播等新興業務及政企業務2C化面臨的訂單量高峰突增的要求,確保訂單中心實時高可用。

訂單中心具備負載均衡能力,包括過載的水平擴縮容能力,保證應用自身可靠性。


實現故障隔離和恢復:應對故障,通過主動控制渠道接入點,將交易接入到正常運行的接入點,實現故障的完全隔離。通過故障點的自動重啟和擴縮容實現故障的恢復。


在系統壓力達到一定程度時,能有效實現限流和高危熔斷/降級處理。


4、實現多層次立體化的監控和可視化展示,通過業務和系統監控的聯動提高運維效率,通過調用鏈快速定位問題,支持告警的閉環管理,可根據資源和業務指標或故障情況自動觸發應用容器的彈性伸縮,實現了系統的可觀測性和自動化運維。

如感興趣,歡迎掃碼留言咨詢圖片關鍵詞
圖片關鍵詞



官方微信公眾號

浩鯨云計算科技股份有限公司 版權所有 2003-2023

蘇ICP備10224443號-6       蘇公網安備 32011402011374號

亚洲精品免费视频_热99re6久精品国产首页青柠_精品国产专区91在线_亚洲美洲欧洲偷拍片区