哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

對于核酸系統(tǒng)架構的一些思考

jf_ro2CN3Fa ? 來源:勇哥java實戰(zhàn)分享 ? 作者:勇哥java實戰(zhàn)分享 ? 2022-10-19 11:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1 明確系統(tǒng)邊界

2 崩潰疑云

3 應用層設計

4 監(jiān)控平臺

5 多方協(xié)作

6 總結

成都核酸檢測系統(tǒng)“崩潰”事件,將東軟推至風口浪尖,同時也在技術圈內(nèi)引發(fā)了廣泛的討論。

開發(fā)一個不崩潰的核酸系統(tǒng)到底難不難 ?

這篇文章,勇哥想象自己是核酸系統(tǒng)架構師,談談自己對核酸系統(tǒng)的理解。

1 明確系統(tǒng)邊界

作為架構師,首先需要明確系統(tǒng)邊界 。

核酸檢測核心流程:

醫(yī)護人員打開核酸系統(tǒng)的手機端應用,錄入試管編碼 ;

醫(yī)護人員掃描居民的健康碼;

醫(yī)護人員采集咽拭子標本 ;

檢測結束之后,醫(yī)護人員將檢測標本送至檢測中心;

檢測中心將檢測結果提交到核酸系統(tǒng),然后核酸系統(tǒng)會將核酸結果同步到健康碼系統(tǒng)。

成都核酸系統(tǒng)崩潰時,流程阻塞在步驟一和二。

本文里我們提到的核酸系統(tǒng),也就是指醫(yī)護人員使用的系統(tǒng) 。而核酸檢測系統(tǒng)會將檢測結果同步到健康碼系統(tǒng) , 健康碼系統(tǒng)面向的是大眾居民 , 是高頻場景。

對于成都市居民來講,與他們關系最為密切的就是兩套系統(tǒng)。

核酸系統(tǒng) :核酸醫(yī)護人員使用 , 東軟負責開發(fā)和維護;

天府健康通 :廣大市民使用,騰訊研發(fā)和維護。

294e79c8-4e90-11ed-a3b6-dac502259ad0.jpg

2 崩潰疑云

核酸系統(tǒng)軟件是屬于政府購買 (TO G),市民使用 (TO C) 。

核酸系統(tǒng)是一個多方協(xié)作的系統(tǒng),它不僅直接和政府有關系,還涉及到多個廠商,一個系統(tǒng)工程背后,除了系統(tǒng)集成商之外,包括多個分包商 。比如西安的一碼通,曾集結了電信、東軟、美林和安恒等公司。

正因為這套系統(tǒng)涉及面之廣,當成都核酸系統(tǒng)崩潰時,我們需要冷靜下來,縷清條理。

我們先從基礎設施層 的維度來分析,很多互聯(lián)網(wǎng)公司會將自己的服務部署在阿里云或者騰訊云,部署方便,也可以動態(tài)擴容。

那么核酸系統(tǒng)部署在哪里呢?假如核酸系統(tǒng)是以 SAAS 形態(tài)部署(東軟自建機房,或者東軟采用阿里云/騰訊云服務),那么成都核酸崩潰事件,東軟必然脫不了干系 。但東軟隨后硬氣的發(fā)了公告:

系統(tǒng)上線后,發(fā)現(xiàn)有響應延遲、卡頓等現(xiàn)象,東軟集團第一時間組織專家組和堅守現(xiàn)場的公司技術人員,與成都市相關部門一起,排查事故原因,強化安全防護,保證系統(tǒng)運行。據(jù)技術專家研判,目前出現(xiàn)的系統(tǒng)響應延遲、卡頓等現(xiàn)象與核酸檢測系統(tǒng)軟件無關。 9月3日零點左右,在進行網(wǎng)絡調(diào)整之后,系統(tǒng)運行平穩(wěn)順暢,效率得到極大提升,當日共完成1200萬樣本采集量。

假如核酸系統(tǒng)沒有問題,會不會是網(wǎng)絡問題呢?成都核酸系統(tǒng)奔潰時,醫(yī)護人員以為是信號問題,紛紛舉起手中的手機,捕捉信號,而排隊的市民卻可以刷抖音,頭條。

9月3日下午4點32分,四川省通信管理局 發(fā)文稱,“全市通信網(wǎng)絡運行平穩(wěn),各核酸檢測點移動網(wǎng)絡覆蓋良好,沒有出現(xiàn)網(wǎng)絡擁塞和故障?!?/p>

我們基本可以做出判斷:成都核酸系統(tǒng)部署在政務云 ,也就是政府部門提供基礎設施 ,應用開發(fā)商將軟件部署在政務云機房里 。

297f4b0c-4e90-11ed-a3b6-dac502259ad0.png

核算系統(tǒng)崩潰的可能原因:

政務云機房問題

網(wǎng)絡問題(負載均衡,帶寬,防火墻), 或者機房服務器出現(xiàn)故障;

核酸系統(tǒng)軟件問題

核酸檢測軟件確實承載能力有限,軟件崩潰了。

3 應用層設計

核酸系統(tǒng)是屬于高并發(fā)應用嗎?這里我們做個估算:

人口估算法

據(jù)統(tǒng)計成都市人口2千萬多人,假設集中在6小時內(nèi)做核酸,平均每小時支持的并發(fā)人數(shù)是3531666。每秒支持的并發(fā)約為1000?;跈z測人員的集中度不均衡的因素,假設高峰期是平均并發(fā)的2-3倍。則每秒并發(fā)“核酸登記”2000-3000左右。

檢測點估算法

今年5月份,上海抗疫期間一共有 15000 + 核酸檢測點 ,我們假設成都有和上海一樣多的核酸檢測點。市民在排隊核酸檢測時,核酸醫(yī)護人員掃居民健康碼的時間間隔在10秒到15秒之間,每個核酸檢測點并行兩排檢測通道,那么每秒并發(fā)“核酸登記”也是在 2000-3000 左右。

通過兩種估算方法,我們發(fā)現(xiàn):核酸系統(tǒng)的請求并發(fā)度并不高 。

雖然并發(fā)度不高,但每天的業(yè)務數(shù)據(jù)條數(shù)量級較高 ,按照東軟的公告,每天可以完成1200萬核酸樣本采集。

假設核酸檢測記錄一天1000萬條數(shù)據(jù),一周就有7000萬條,1個月就能達到3億條數(shù)據(jù)。那么勢必要使用分庫分表 。

298674f4-4e90-11ed-a3b6-dac502259ad0.png

醫(yī)護人員掃市民的健康碼 ,核酸登記的請求發(fā)送到 api 網(wǎng)關 , api 網(wǎng)關將請求轉發(fā)到核酸系統(tǒng);

緩存存儲檢測點,檢測批次等基礎信息,核酸系統(tǒng)通過緩存判斷業(yè)務請求是否合法,若合法,則組裝真正的入庫的數(shù)據(jù);

核酸系統(tǒng)調(diào)用分庫分表中間件將數(shù)據(jù)插入到數(shù)據(jù)庫 。

看起來,核酸系統(tǒng)的架構設計還是比較簡單清晰的,核心點在于用分庫分表硬擋高流量訪問 。

但現(xiàn)在這種模式就完美了嗎 ?

我們舉湖北鄂通碼舉例,核酸登記后,健康碼在 10~20 分鐘狀態(tài)會修改成綠色并標識成:核酸已檢測 ,也就是核酸已檢測的狀態(tài)會異步同步到健康碼服務。

我們不由得想到了消息隊列 MQ ,MQ 最大的優(yōu)勢在于:異步解耦 ,MQ 模式還有一個優(yōu)點:當流量激增時,消息隊列還可以起到消峰 的作用。

298baca8-4e90-11ed-a3b6-dac502259ad0.png

MQ 方案里,核心流程如下:

醫(yī)護人員掃市民的健康碼 ,核酸登記的請求發(fā)送到 api 網(wǎng)關 ,api 網(wǎng)關將請求轉發(fā)到核酸系統(tǒng);

緩存存儲檢測點,檢測批次等基礎信息,核酸系統(tǒng)通過緩存判斷業(yè)務請求是否合法,若合法,則組裝真正的入庫的數(shù)據(jù);

核酸系統(tǒng)將檢測記錄發(fā)送到消息隊列,返回給前端響應成功;

消費者接收消息后調(diào)用分庫分表中間件將數(shù)據(jù)插入到數(shù)據(jù)庫 ;

消費者接收消息后同步狀態(tài)到健康碼服務。

在架構設計中,并不是引入了組件就完事了,更需要考慮如何精準的使用組件。

比如,使用消息隊列 kafka ,如何保證不丟消息,如何保證高可用。使用了分庫分表中間件,是不是需要考慮數(shù)據(jù)異構,以及冷熱分離等。

4 監(jiān)控平臺

我們經(jīng)常講:研發(fā)人員有兩只眼睛,一只是監(jiān)控平臺,另一只是日志平臺。

在對性能和高可用講究的場景里,監(jiān)控平臺的重要性再怎么強調(diào)也不過分。

29b65c78-4e90-11ed-a3b6-dac502259ad0.png

▍一、基礎運維監(jiān)控

基礎運維監(jiān)控負責監(jiān)控服務器的 CPU、網(wǎng)絡、磁盤、負載、網(wǎng)絡流量、TCP 連接等指標,并且通過設定報警閾值實時通知指定負責人。

29be61c0-4e90-11ed-a3b6-dac502259ad0.png基礎運維監(jiān)控

我們在基礎設施層 這一節(jié)里提到:

核酸系統(tǒng)崩潰時,成都政務云不能提供暢通的核酸檢測服務 , 可能原因之一是政務云機房問題 。

當政務云機房出現(xiàn)問題時,基礎運維監(jiān)控可以幫助運維人員更快的發(fā)現(xiàn)問題,并制定解決策略。

▍二、應用系統(tǒng)監(jiān)控

應用系統(tǒng)監(jiān)控是研發(fā)人員接觸最多的一種監(jiān)控類型,系統(tǒng)出現(xiàn)瓶頸的時候,應用系統(tǒng)監(jiān)控會有最直觀的體現(xiàn)。

29c5f5c0-4e90-11ed-a3b6-dac502259ad0.png

筆者一般會關注性能監(jiān)控,方法可用性監(jiān)控,方法調(diào)用次數(shù)監(jiān)控,JVM 監(jiān)控這四大類。

性能監(jiān)控

29cfcc08-4e90-11ed-a3b6-dac502259ad0.png性能監(jiān)控

性能監(jiān)控不同時間段性能分布,實時統(tǒng)計 TP99、TP999 、AVG 、MAX 等維度指標,這也是性能調(diào)優(yōu)的重點關注對象。

方法調(diào)用次數(shù)監(jiān)控

29f8e502-4e90-11ed-a3b6-dac502259ad0.png

方法調(diào)用次數(shù)監(jiān)控可以按照機器,時間段分析接口或者方法的調(diào)用次數(shù),當大流量來襲時,可以清晰的看到請求的波動。

方法可用性監(jiān)控

29ffe99c-4e90-11ed-a3b6-dac502259ad0.png方法可用率監(jiān)控

方法可用性監(jiān)控是指:當接口被調(diào)用或者方法被執(zhí)行,可能返回異?;蛘叻椒▓?zhí)行拋異常,分析該方法是否調(diào)用正常,當系統(tǒng)出現(xiàn)嚴重問題時,方法可用率是一個重要的參考指標。

JVM 監(jiān)控

2a268368-4e90-11ed-a3b6-dac502259ad0.pngJVM 監(jiān)控

JVM 監(jiān)控是 JAVA 工程師特別關注的監(jiān)控類型,我們會重點關注:堆內(nèi)存,GC 頻率 ,線程數(shù)等等。

▍三、業(yè)務監(jiān)控

業(yè)務監(jiān)控功能是從業(yè)務角度出發(fā),各個應用系統(tǒng)需要從業(yè)務層面進行哪些監(jiān)控,以及提供怎樣的業(yè)務層面的監(jiān)控功能支持業(yè)務相關的應用系統(tǒng)。

具體就是對業(yè)務數(shù)據(jù),業(yè)務功能進行監(jiān)控,實時收集業(yè)務流程的數(shù)據(jù),并根據(jù)設置的策略對業(yè)務流程中不符合預期的部分進行預警和報警,并對收集到業(yè)務監(jiān)控數(shù)據(jù)進行集中統(tǒng)一的存儲和各種方式進行展示。

2a32d1f4-4e90-11ed-a3b6-dac502259ad0.jpg

比如訂單系統(tǒng)中有一個定時結算的服務,每兩分鐘執(zhí)行一次。我們可以在定時任務 JOB 中添加埋點,并配置業(yè)務監(jiān)控,假如十分鐘該定時任務沒有執(zhí)行,則發(fā)送郵件,短信給相關負責人。

5 多方協(xié)作

很多同學都指責東軟失職:“核酸系統(tǒng)在倉促上線之后,到底有沒有進行完備的性能測試 ”。

確實,性能測試非常重要 ,通過壓測可以知道系統(tǒng)的極限值是多大,當系統(tǒng)承受不住訪問時,就會暴露出瓶頸,如服務器 CPU、數(shù)據(jù)庫、內(nèi)存、響應速度等,從而促使研發(fā)團隊進行再優(yōu)化。

這里我們先按捺指責的沖動,核酸系統(tǒng)是一個多方協(xié)作的系統(tǒng),它不僅直接和政府有關系,還涉及到多個廠商,一個系統(tǒng)工程背后,除了系統(tǒng)集成商之外,包括多個分包商 。

6 總結

假如我是核酸系統(tǒng)的架構師。

我會使用消息隊列 + 分庫分表來最大程度提升系統(tǒng)的吞吐量。

我會在使用消息隊列中間件的時候,重點關注如何不丟失消息,消息系統(tǒng)如何做到高可用。

我會使用分庫分表中間件時,重點關注冷熱分離,如何將數(shù)據(jù)異構到數(shù)據(jù)倉庫。

我會在政務云部署監(jiān)控系統(tǒng),提供基礎運維監(jiān)控,應用系統(tǒng)監(jiān)控,業(yè)務監(jiān)控的能力,當系統(tǒng)出現(xiàn)問題時,團隊可以以最快的速度發(fā)現(xiàn)問題,并解決問題。

可是 ,核酸系統(tǒng)是一個多方協(xié)作的系統(tǒng),我們不僅需要和政府溝通,也需要和眾多三方廠商協(xié)作。

也許,當我提出需要更多服務器預算時,政府部門的預算并不充足,或者就算充足了,走流程也要一個月的時間;

也許,當我提出需要部署監(jiān)控系統(tǒng),公司會以人力不足為由或者政務云硬件資源不足,否定我的方案;

也許,當我聯(lián)調(diào)時發(fā)現(xiàn)一個三方接口速度慢,排查起來(溝通成本)需要 4-7 天時,我也不得不沉浸在瑣事中;

直到最后,當系統(tǒng)崩潰時,我也只能嘆息到:“尊重技術,尊重專業(yè) ”。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關注

    關注

    20

    文章

    3005

    瀏覽量

    116801
  • TCP
    TCP
    +關注

    關注

    8

    文章

    1432

    瀏覽量

    83755
  • JVM
    JVM
    +關注

    關注

    0

    文章

    161

    瀏覽量

    13084
  • 解耦
    +關注

    關注

    0

    文章

    43

    瀏覽量

    12237
  • kafka
    +關注

    關注

    0

    文章

    55

    瀏覽量

    5593

原文標題:假如我是核酸系統(tǒng)架構師,我會...

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    對于繪制USB DRP架構一些疑問求解

    我正在繪制新系統(tǒng)架構,對此有一些疑問: 1) 通常左側板有 20V 固定電源,將通過 TypeC 端口向右板提供 20V。 a) Vbus 通過 Mosfets 直接連接到 20V,如果談判失敗
    發(fā)表于 02-23 06:31

    關于嵌入式系統(tǒng)一些思考

    直在學習stm32,做到一些項目也都是裸跑,不知道嵌入式系統(tǒng)是否就比裸跑更加好,但是當處理當多任務的時候,有了操作系統(tǒng)對任務的劃分思路比較清晰,性能也能得到滿足。比較常用的應該是uc
    發(fā)表于 01-05 00:18

    ARM與DSP雙芯片架構一些疑問如何解答

    定點運算法,所以打算選擇兩個獨立的ARM與DSP組成系統(tǒng)架構?,F(xiàn)在打算擴展個TMS320C6748 DSP作為數(shù)據(jù)處理的協(xié)處理器?,F(xiàn)在面臨一些問題,想請教
    發(fā)表于 05-27 12:27

    基于ARM架構Cortex-A7 IMX6ULL 核心板設計核酸自動提取儀顯控解決方案

    研究等多種領域。 全自動核酸提取系統(tǒng),是類應用配套的核酸提取試劑來自動化完成樣本核酸快速提取過程的儀器。根據(jù)其提取方法的不同,可分為離心柱
    發(fā)表于 08-26 14:30

    關于車載信息娛樂系統(tǒng)軟件設計的一些思考

    本文就車載信息娛樂系統(tǒng)的軟件設計從安全性、實時性、環(huán)保性和新穎性四個方面提出一些思考。
    發(fā)表于 05-11 06:46

    關于MCU,給研發(fā)提供一些思考吧!

    關于MCU,給研發(fā)提供一些二供思考吧目前芯片價格上漲,無論是國產(chǎn)還是進口,都或多或少存在缺貨狀態(tài)其實,大廠般有供應商供貨,價格又低廉,交期也不是大問題,而最下面的小廠家最是悲催,軟件和硬件
    發(fā)表于 06-18 10:24

    嵌入式一些日常小技巧分享

    雜記–算法學習日志+關于實驗室部門架構思考+嵌入式一些日常小技巧分享算法學習日志因為從初中到現(xiàn)在直是學習嵌入式程序的開發(fā)和研究,并沒有在面向對象的程序上有很大的研究和進展,在近期發(fā)
    發(fā)表于 12-21 08:07

    《 AI加速器架構設計與實現(xiàn)》+學習和一些思考

    激活函數(shù) 激活函數(shù)很多,如Sigmod,ReLU等等,這里不放圖了。 一些典型設計 系統(tǒng)架構設計 具體實現(xiàn)
    發(fā)表于 09-16 11:11

    未來寬帶移動通信網(wǎng)絡技術發(fā)展的一些思考

    未來寬帶移動通信網(wǎng)絡技術發(fā)展的一些思考中國科學院計算技術研究所研究員 石晶林摘要:寬帶移動通信已經(jīng)成為國際新的輪技術和產(chǎn)業(yè)競爭的焦點,今后十年將是寬帶無
    發(fā)表于 12-19 15:30 ?28次下載

    一些區(qū)塊鏈公鏈技術發(fā)展的思考

    今天這里分享一些區(qū)塊鏈公鏈技術發(fā)展的思考。公鏈作為區(qū)塊鏈世界的基礎設施中的基石,極大地影響著上層應用的效率、成本以及用戶體驗。如果從比特幣開始算起,公鏈路走來已經(jīng) 10 年了,但至今為止還遠未到技術收斂的階段。在這第 11 個
    的頭像 發(fā)表于 02-20 10:46 ?5431次閱讀

    有關Redis的一些思考和理解

    本篇文章不是篇具體的教程,筆者打算記錄下自己對 Redis 的一些思考。說來慚愧,筆者剛接觸 Redis 的時候只是簡單地使用了下,背
    的頭像 發(fā)表于 10-30 11:21 ?1137次閱讀

    關于我國芯片制造的一些思考主題演講

    近日,SEMICON China在上海隆重舉行,在同期高峰論壇上,中國工程院院士、浙江大學微納電子學院院長吳漢明發(fā)表了題為《關于我國芯片制造的一些思考》的演講。
    的頭像 發(fā)表于 03-22 13:39 ?6118次閱讀

    有關嵌入式系統(tǒng)一些思考

    有關嵌入式系統(tǒng)一些思考何為嵌入式?為何要嵌入式?難點在哪里?發(fā)展趨勢是什么?何為嵌入式?根據(jù)英國電氣工程師協(xié)會( U.K. Institution of Electrical Engineer
    發(fā)表于 10-19 18:33 ?2次下載
    有關嵌入式<b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>一些</b><b class='flag-5'>思考</b>

    架構師需了解的一些知識

    軟件架構師的想法。引用維基百科里的定義, **軟件架構師的職責就是在軟件系統(tǒng)研發(fā)中,負責依據(jù)需求來確定主要的技術選擇、設計系統(tǒng)的主體框架結構,并負責搭建實施** 。然而,
    的頭像 發(fā)表于 05-10 17:11 ?1873次閱讀
    <b class='flag-5'>架構</b>師需了解的<b class='flag-5'>一些</b>知識

    對于大模型RAG技術的一些思考

    大模型或者句向量在訓練時,使用的語料都是較為通用的語料。這導致了這些模型,對于垂直領域的知識識別是有缺陷的。它們沒有辦法理解企業(yè)內(nèi)部的一些專用術語,縮寫所表示的具體含義。這樣極大地影響了生成向量的精準度,以及大模型輸出的效果。
    的頭像 發(fā)表于 12-07 09:41 ?2180次閱讀
    <b class='flag-5'>對于</b>大模型RAG技術的<b class='flag-5'>一些</b><b class='flag-5'>思考</b>
    白银市| 叙永县| 丹东市| 巫溪县| 墨玉县| 岳普湖县| 静海县| 东乡县| 中阳县| 斗六市| 永仁县| 海南省| 凤台县| 天津市| 江北区| 冷水江市| 调兵山市| 库伦旗| 荥经县| 含山县| 旅游| 隆子县| 天门市| 遵化市| 宜宾县| 新巴尔虎右旗| 怀集县| 大石桥市| 灵台县| 资兴市| 奉贤区| 西吉县| 扶沟县| 迁安市| 保靖县| 和田市| 奉贤区| 治县。| 华阴市| 五大连池市| 新巴尔虎左旗|