業內人士解析多地“健康碼”系統崩潰:接口不穩定、系統壓力大
1月10日,廣東地區日常使用的粵康碼和天津市核酸檢測系統相繼被曝系統崩潰。據相關媒體報道,粵康碼出現系統故障,經技術部門維護,已於10日上午10時許恢復正常。另據天津市市民介紹,當地核酸檢測系統早在9日就曾出現過“癱瘓”,今天(10)系再次“癱瘓”,目前還不知其原因。
▲粵康碼公告
自新冠疫情爆發以來,“健康碼”已成為民眾出行,查驗個人健康狀況的必要條件。然而因各地的運維方式與水準不同,兩年來,多個省市的本土“健康碼”曾先後出現系統崩潰等問題,導致民眾出行一度受阻。
多名IT界業內人士告訴紅星新聞記者,接口不穩定、系統壓力大,以及外網的惡意攻擊等都是“健康碼”系統崩潰的原因,“每個地方的‘健康碼’都是各自為戰的,並不統一。因此,出現崩潰的原因也是多樣的。”
兩年時間
十餘省市出現多起“健康碼”崩潰問題
“早上突然就打不開粵康碼了,頁面刷新了好幾次都沒用。”家住廣州白雲區的唐先生告訴紅星新聞記者,今早(10日)上班時需出示綠碼,他便隨手打開了粵康碼,但幾次嘗試都顯示無法加載,後為節省時間便另行使用了可打開的穗康碼。事後,唐先生上網搜尋相關信息,發現身邊有許多市民均有打不開粵康碼的情況,“不久就有報道説,是粵康碼出現系統故障,技術部門正在維護。”
據網友曬出的粵康碼公告顯示,10日上午8:31平台檢測到粵康碼流量異常增大,最高達每分鐘140萬次,超出承載極限,觸發系統保護機制,導致部分用户訪問粵康碼緩慢或異常,運行保障團隊緊急處置,於9:04部分緩解,9:56完全恢復順暢運行。
▲微博網友稱天津市的核酸檢測系統崩潰
此外,部分天津地區的市民也在網上反應稱,當地核酸檢測系統在1月9日就曾出現過一次系統崩潰,而今日又再次崩潰,目前還不知其崩潰原因。據悉,由於天津市近日新增多例本土確診病例,天津市疫情防控指揮部為防控疫情擴散傳播,決定自1月9日7時起,24小時內完成津南區、南開區、東麗區、西青區全體居民核酸檢測工作;自1月10日7時起,24小時內完成其他12個區全體居民的核酸檢測工作。
據瞭解,自2020年新冠疫情爆發後,為有效防控疫情與平衡正常的人口流動和復工復產,各地方政府利用大數據、雲計算、人工智能等新興技術,相繼推出本土“健康碼”,作為查驗市民個人健康狀況的電子憑證。2020年2月7日晚,杭州餘杭上線了全國首張健康碼——“餘杭綠碼”,餘杭居民能憑着手機裏的健康碼出行、復工。隨後的2月11日,杭州健康碼在支付寶率先上線,首創紅、黃、綠三色動態健康碼模式。短短兩週時間,健康碼就從杭州一城推廣到了全國200城,並開始逐步推動互通互認。
但通過檢索關鍵詞,紅星新聞記者發現,在實際使用“健康碼”的這兩年裏,已有部分城市先後發生過系統崩潰等故障問題。如,2020年5月6日,杭州健康碼無法正常打開;2021年5月7日及8日,澳門健康碼連續兩日出現異常情況,導致部分人無法轉換粵康碼;2021年8月2日,山東健康碼卡頓;2021年12月20日,西安一碼通崩潰;2021年12月25日,天津健康碼出現異常。
紅星新聞記者還注意到,各地健康碼在發佈初期還曾發生多次系統疏漏事件,包括不能修改個人資料、自動錄入體温37度等。同時,用於輔助健康碼使用、確認14天內行程的通信巨量資料行程卡,也存在省界附近訊號重疊,以致未出省卻顯示到過鄰省的問題。
“健康碼”系統為何頻頻崩潰?
接口不穩定、系統壓力大、外網攻擊…
後疫情時代,“健康碼”作為防疫手段已成民眾出行的必備品之一。在經歷了兩年多的試驗後,“健康碼”系統為何仍舊問題頻出?對此,紅星新聞記者專門諮詢了多位IT界人士。
業內人士小北告訴紅星新聞記者,“健康碼”是以真實數據為基礎,由市民或者返工返崗人員通過自行網上申報,經後台審核後,生成的屬於個人的二維碼。其區別於以往防疫階段用紙質手寫的方式來記錄、統計數據,“借用互聯網大數據,可更直觀、更便捷的掌握民眾的相關信息。”
小北介紹,從專業角度來看,目前各地的“健康碼”均由A、B、S三段組成,即A段為用户身份標識,需經實名實人認證後取得,代表個人信息主體的身份;B段為業務數據,代表了碼的類型、制碼平台標誌、碼的截止時間和信息主體授權記錄摘要;S段則為針對A+B內容的數字簽名值。“這些都需建立在相應的系統上,因此軟件設計環節必須細緻,且能夠及時優化。”
小北説,由於目前各省市大多都自行研發了本地的健康碼系統,加上其運維方式與水準的不同,導致健康碼出現問題時,其原因也是各異的。“之前杭州健康碼無法正常打開,是因為系統臨時出現接口不穩定;山東健康碼卡頓是由於訪問量太大導致;天津健康碼出現‘掃碼和申請場所碼’異常是由於功能變更,短期內系統不穩定;澳門健康碼連續兩日出現異常情況則是因為受到外網惡意攻擊。”
小北認為,除去這些原因外,導致健康碼頻頻崩潰的更多的還是數據訪問量過載,“就好比原先設計的是超市能同時容納一萬人購物,但那天來了十萬人,造成了超市門口出現了排隊現象,後來排隊時間過長,直接把超市給堵上了,再後來的人就進不來了。”
國內某安全網站長、資深安全顧問表示,這或與系統的預算有關。“以前的預算,大概率‘均不支持’這麼大的併發。比如以前幾乎都不會考慮‘整個城市一天內完成全員核酸檢測’,如果當時支持,審計就會出問題,因為平時流量小,人家花那麼少錢憑啥你花這麼多。”
知乎一認證程序員也向紅星新聞記者表示,國內的各地健康碼多是外包給本土的軟件公司完成,其目的主要是為了完成本地數據收集,因此在構建時的着眼用户和功能設計相對狹窄,“當集中使用的用户人數超過限額,或某一個政務雲系統崩潰,就會接連影響到整個系統。”
該程序員還説,“健康碼”在程序上看似使用的人較多,但實際上每個人只是和服務器交換了一點數據,“同時間百萬級別的併發,屬於一定規模的併發,按説應該很輕鬆才對。”其認為,這種軟件數據系統的研發運營需要有足夠的經驗,以及足夠的錢和時間,“最主要的是需要足夠的測試。短時間內多次崩潰至少説明了系統測試是不充分的。”
北京青年報評論作者馮海寧則認為,讓健康碼發揮重要作用的前提是系統不崩潰,而這需要各地根據常住人口數量、健康碼使用頻率等因素,來提升系統的承載能力,防止崩潰或者癱瘓等情況發生。馮海寧還表示,對於健康碼崩潰要有替代性預案。由於健康碼會不會崩潰、何時崩潰,均存在不確定性,所以,避免健康碼崩潰帶來的種種不便,要有臨時替代性應急預案。比如,讓核酸檢測機構與健康碼查驗機構實現信息互通互聯,在查驗端口輸入個人手機號碼或身份證號就能看到核檢結果。
據國家發展改革委官網消息,近日,國家發展改革委、交通運輸部、公安部等十四個部門發佈《關於全力做好2022年春運工作的意見》。其中提出,要落實健康碼全國“一碼通行”,鼓勵各地區推廣刷身份證自動核驗健康碼服務。
紅星新聞記者 羅夢婕 實習生 陳鵬多
編輯 郭宇