千萬級高併發下,看天翼雲如何為“健康碼”突破技術瓶頸

天翼雲開發者社群發表於2022-06-07


“一碼潰,眾難行”短短六個字,卻是目前疫情反彈、全國嚴密防控之下,大眾生活的直接寫照。毫無疑問,作為此次疫情中產生的“速生品”,在經歷兩年疫情大考之後,健康碼已逐漸演變為國人出行的第二張“身份證”。5月以來,常態化核酸檢測成為公眾熱點話題,在國內疫情多點散發、持續高發的形勢下,北京市、上海市、山東省、山西省、江西省等省市紛紛開展常態化核酸檢測。

 

國家衛生健康委新聞發言人、宣傳司副司長米鋒曾表示:要完善常態化監測機制,省會和千萬級人口以上城市建立步行 15分鐘核酸“取樣圈”,方便群眾就近就便進行核酸取樣。開展核酸定期檢測,重點行業和人群加大檢測頻次,提高早發現能力。

同時,全國常態化核酸檢測所引發的流量衝擊也造成了 “健康碼”APP、小程式的訪問量陡升,多地健康碼系統面臨更大挑戰。在全民化的流量衝擊下,傳統健康碼平臺的升級已然勢在必行。

後疫情時代,一 “碼”背後的難題

簡單的掃碼,亮碼,出示核酸結果幾個動作其背後其實隱藏著一套龐大且複雜的資料系統。回想疫情初期,當時各地普遍採取了線下收集、手動排查的,基層人員需要逐一對轄內人口進行排查,資訊填報,而健康碼系統的出現則一勞永逸解決了這一困境。從線下到線上、從人工到機器,其背後的執行邏輯其實沒有發生任何變化。健康碼顯示資訊的背後,其實有著三套龐大的資料體系在做支撐,來自衛健委疾控中心的病例資訊、核酸檢測資訊,來自公安系統的戶籍情況與社會關係情況以及來自運營商的活動軌跡資訊。

正如我們在開頭所提到的,來自多方龐大且繁雜的資料以及全民化、常態化疫情防控所帶來的流量衝擊,傳統健康碼平臺的升級事實上是必然的結果。

根據分析,健康碼面對的主要挑戰包含:短期內訪問量過大導致的伺服器癱瘓、系統容量不足、網路頻寬等硬體問題、本身軟體的設計缺陷問題等。總結其原因,我們也能夠羅列出傳統健康碼平臺出現的三大典型問題:

· 基礎設施與業務應用設計割烈

IaaS、PaaS層與業務應用間設計割裂,且未提前進行調測和最佳化,易出現讀寫異常等問題,影響健康碼正常應用。

· 熱備及雙活容災能力有限

系統熱備及雙活架構設計有限,尤其對於異構容災雙活設計不足,針對多碼融合等複雜場景及各類突發狀況未做充分準備。

· 突發峰值應對能力不足

疫情爆發時易出現短時間、大規模、高併發兩碼查詢及核酸檢測登記、錄入情況,面對突發峰值,在系統能力、資源上應對方面能力不足。

健康碼的 “問”,天翼雲的“答”

針對上述問題,國家釋出的《健康碼和核酸系統安全平穩執行工作指引 3.0》檔案中針對系統應對尖峰流量衝擊能力、系統最大承載能力以及拒絕服務攻擊能力提出了全新的要求,檔案中更是多次強調了內容分發網路(CDN)、快速擴容、熱備雙活機制等技術措施的重要性。

作為雲端計算技術領域的 “國家隊”,中國電信旗下的雲端計算服務提供商天翼雲自然是不遑多讓,在第一時間發現傳統健康碼系統癥結的同時,便迅速開展了技術攻堅,並打造了全新的健康碼系統上雲建設方案。

為了應對特殊時期龐大流量引發的高併發衝擊,天翼雲搭建的健康碼系統與核酸檢查系統 QPS(每秒查詢率)可達6萬以上,每小時可相應2億人次的健康碼查詢/核酸檢查資料請求。在應對節點故障或效能不足的突發狀況下,為保障健康碼及核酸系統的正常執行,該方案可支援5分鐘內完成快速擴容需求。同時,在底層伺服器出現故障時,天翼雲搭建的健康碼與核酸檢測系統能夠在35秒內自動完成虛機漂移。透過快速將故障虛機的控制轉到叢集的另一臺控制伺服器上,使虛機保持正常執行,從而確保了整體系統的高可用性。

天翼雲健康碼與核酸檢測系統 laaS拓撲主要分為3大模組:三線BGP、兩個業務資源池。BGP機房主要用於三大運營商之間的互聯,BGP的最主要功能在於控制路由的傳播和選擇最好的路由。使用BGP協議互聯後,網路運營商的所有骨幹路由裝置將會判斷到IDC機房IP段的最佳路由,以保證不同網路運營商使用者的高速訪問。

 

天翼雲健康碼解決方案 laaS層面架構圖

在資源池資料中心方面,天翼雲採用了雙活中心的方案架構設計。何為 “雙活”中心?如同字面含義一樣,雙活指的便是由兩個資料中心並行執行的模式,在雙活架構下兩個資料中心都處於執行之中,且互為備份。天翼雲雙活資料中心在資源配比到業務部署皆為1:1配置,且雙中心從東西向網路,到核心交換、業務裝置的物理鏈路層面都處於完全隔離的狀態。雙活中心之間透過OTN專線進行互聯,資料透過資料鏈以及IaaS層面的高可用方案來保證通訊。

天翼雲雙活中心方案整體架構圖

天翼雲多中心架構方案使用雙節點熱備搭建,實現雙系統容災部署模式。正常模式下協同工作,同時可並行提供業務訪問服務。在主節點發生故障的情況下,可第一時間實現節點的無感切換,從而支撐業務的連續性。

利用其獨有的運營商資源優勢,天翼雲雙活架構選擇了與主中心同在一個區域的資源池作為雙活中心,透過已建波分環路進行基礎網路高速互聯,基於負載均衡和分散式叢集技術,逐層實現網路雙活、應用雙活、快取雙活以及資料庫雙活。

據瞭解,目前天翼雲已在華北、西安、蘇州等多地具有 3AZ部署。

天翼雲 SCDN—打破流量瓶頸,重塑安全長城

有果必有因,前文我們介紹了天翼雲健康碼系統在高併發、高負荷考驗下所結出的 “果”,接下來我們便要從技術的角度去探索背後的“因”。

在面對每秒數萬人次的高併發健康碼訪問時,無論是雙活中心內部資料的高速互聯、災難發生時的業務快速接管亦或是公眾使用者在邊緣端的靜態資料訪問,傳輸最佳化是解決這一系列問題的重中之重,而天翼雲 SCDN解決方案便是那把關鍵的“鑰匙”。

天翼雲 SCDN解決方案共分為三個版本:基礎版、標準版與旗艦版。在健康碼與核酸檢測系統的應用場景中,實際上有90%的請求來自於靜態檔案快取的處理。SCDN方案基礎版實現了將源站的靜態資料快取在邊緣節點,使用者在傳送請求時便可直接在邊緣節點上對靜態檔案做出快速響應。透過提供分散式快取檔案、最近邊緣節點載入檔案,方案高效解決了集中式檔案快取導致網頁載入速度慢的問題。

天翼雲 SCDN基礎版擁有著豐富的回源策略,可以實現透過智慧傳輸路徑探測選擇效能最優路徑進行資料傳輸。同時天翼雲CDN支援主備、輪詢、權重等多種策略,支援IPV6/IPV4回源,支援多級快取收斂。這也使得SCDN方案的出現極大地降低了出示健康碼時帶來的回源壓力,回源頻寬約是此前整體訪問的10%,回源請求數降低了50%。除此之外,基礎版還包含了便捷的內容管理模組,包含了內容重新整理、內容預期、一鍵封禁等便捷功能。

在保障健康碼系統的高可用、高可靠執行之外,由於健康碼系統所承載的是最為直接的公民個人資訊,如若防護不當可能會造成不可挽回的資訊洩露影響,安全也是健康碼系統構建中必不可少的重要一環。除了對於傳輸層面的最佳化外,天翼雲 SCDN基礎版中還有著豐富的Web應用防護與DDoS高防能力。

天翼雲 Web應用防護服務擁有著遍佈全國各個邊緣節點的防護能力,能夠直接從威脅的源頭阻擊攻擊流量,有效降低源站壓力。其WAF引擎能夠實時檢測惡意請求並及時處理,幫助使用者提供應對 OWASP TOP 10攻擊,爬蟲、域名劫持等網站及 Web 業務安全防護問題。在健康碼應用場景中,天翼雲Web應用防護服務能夠提供亮碼防護與實時擴容效能,讓安全防護不再成為限制整體系統的“效能枷鎖”。

 

天翼雲 Web應用防護架構圖

DDoS攻擊作為一種常見且高威脅性的網路攻擊手段,憑藉其低攻擊成本、高防禦成本的特性一直以來都是政府企業安全部門的重點關注物件。而對於全民化的健康碼系統,做好DDoS防護安全自然是系統設計的重要指標。天翼雲DDoS高防透過CNAME接入,可在邊緣節點對源站的所有請求進行實時檢測和清洗,無需牽引。相較於傳統的集中式防護,天翼雲DDoS透過負載均衡來動態調動資源,就近覆蓋使用者訪問,不存在單點故障風險。而在健康碼系統中,天翼雲DDoS高防提供了亮碼防護,屬地防護以及雲原生架構快速擴容的功能,保障了業務系統不受大流量攻擊影響。

 

天翼雲 DDoS防護效果圖

以上就是天翼雲 SCDN方案基礎版的功能分析,在標準版中天翼雲增加了源站動態查詢結果快取功能,提供了亮碼雲端線上的能力;而在旗艦版中天翼雲DTS升級研發了DB2CDB能力,實現了源站零請求、亮碼永遠線上的進階功能。

總結

中國的健康碼資料系統,這個世界範圍內擁有最多使用者、最多個人資料、可以隨時隨地掌握疫情個體情況的平臺幾乎成為了此次國內抗疫的決定性武器。在疫情反覆、防控常態化的大背景下,數字化防疫也進入了下半場,健康碼系統的升級勢在必行。

健康碼系統的升級是一場關乎民生的大考,大到系統設計、雲網互動能力、安全防護,小到訪問方式、業務保障皆需深度考量。在 CSDN看來,天翼雲健康碼解決方案無論是雙活中心設計在容災能力的冗餘度上,亦或是SCDN方案在傳輸與安全效能所帶來的變革式最佳化上,都讓我們有足夠的信心,去從容應對疫情防控常態化所帶來的挑戰。

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70014251/viewspace-2899239/,如需轉載,請註明出處,否則將追究法律責任。

相關文章