哈嘍,大家好,我是小方,今天這篇,我們主要來看看全球頂級金融巨頭摩根大通,在大規(guī)模云和分布式應(yīng)用轉(zhuǎn)型中栽過的跟頭、總結(jié)的硬招。
可能有人覺得這跟咱們沒關(guān)系,但你只要用過手機(jī)銀行、網(wǎng)上支付,就該知道這些系統(tǒng)穩(wěn)定運(yùn)行的背后,全是這些硬核經(jīng)驗(yàn)在支撐。尤其是現(xiàn)在各行各業(yè)都在往云上遷,摩根大通踩過的坑,說不定就能幫咱們避開不少麻煩。
![]()
摩根大通的云遷移,沒搞那些花里胡哨的,核心就盯著三件事:一是能高效彈性擴(kuò)展,業(yè)務(wù)漲了系統(tǒng)能跟上,還不浪費(fèi)錢;二是高韌性,畢竟金融系統(tǒng)一秒宕機(jī)都可能引發(fā)大問題;三是性能夠好,誰也不想查個(gè)余額等半天,對吧?
![]()
這三個(gè)目標(biāo)看著簡單,實(shí)際落地全是坑。他們一開始也犯了個(gè)常見錯(cuò)誤,規(guī)劃時(shí)只考慮兩三倍的負(fù)載增長,結(jié)果一上線就傻眼了。要么遇到發(fā)薪日,客戶扎堆查余額;要么碰到市場波動,大家瘋狂交易;更要命的是還會遭DDoS攻擊,流量直接飆到正常水平的十倍以上。
![]()
很多人覺得系統(tǒng)扛不住了就加服務(wù)器,摩根大通早期也是這么干的,結(jié)果越加越亂,成本上去了,問題還沒解決。后來才發(fā)現(xiàn),有時(shí)候系統(tǒng)變慢不是客戶需求多,而是上游服務(wù)卡住了,線程等著響應(yīng),CPU和內(nèi)存壓力飆升,反而觸發(fā)了不必要的彈性擴(kuò)展。
![]()
他們后來搞了個(gè)“流量整形”的辦法,先分清哪些是核心功能,比如登錄、查余額、轉(zhuǎn)賬,這些功能的資源必須時(shí)刻保證。非核心的,比如查看歷史賬單,壓力大的時(shí)候就暫時(shí)降級。另外還預(yù)留了一部分計(jì)算容量,防止彈性擴(kuò)展的“延遲問題”,畢竟新服務(wù)器啟動、連數(shù)據(jù)庫都要時(shí)間,等弄好說不定流量高峰都過去了。
這里插一句,咱們國內(nèi)的吉林銀行也有類似經(jīng)歷。2024年他們要建金融云平臺,一開始是單中心架構(gòu),遇到一次機(jī)房線路故障,部分業(yè)務(wù)停了快一小時(shí)。
![]()
后來跟華為云合作搞了“兩地三中心”架構(gòu),去年12月有個(gè)同城災(zāi)備中心出問題,系統(tǒng)自動把流量切到其他中心,客戶完全沒感覺到異常,業(yè)務(wù)恢復(fù)時(shí)間直接降到分鐘級。
![]()
摩根大通總結(jié)出一個(gè)道理,不是所有系統(tǒng)組件都要追求100%可用,那樣成本太高也不現(xiàn)實(shí)。他們把基礎(chǔ)設(shè)施分成了四級:最關(guān)鍵的比如DNS,必須近乎100%可用,不然整個(gè)網(wǎng)站都打不開;
然后是可管理級,比如核心交易系統(tǒng),目標(biāo)是每年停機(jī)不超過52分鐘;再往下是可容忍級,比如緩存令牌服務(wù),就算暫時(shí)壞了,系統(tǒng)還能靠緩存數(shù)據(jù)運(yùn)行;最后是可接受級,比如一些日志系統(tǒng),丟點(diǎn)數(shù)據(jù)問題不大。
![]()
他們還踩過一個(gè)坑,有次一個(gè)可用區(qū)的應(yīng)用跟后端數(shù)據(jù)庫連接異常,但應(yīng)用自身的健康檢查沒包含數(shù)據(jù)庫狀態(tài),負(fù)載均衡器還一個(gè)勁往這兒導(dǎo)流量,結(jié)果好多客戶交易失敗。后來他們改了健康檢查規(guī)則,把依賴系統(tǒng)的狀態(tài)也加進(jìn)去,再加上代理重路由,這問題才算解決。
吉林銀行在這方面也有巧招,他們的云平臺搞了三層網(wǎng)絡(luò)互通和智能DNS調(diào)度,單中心出問題時(shí),負(fù)載均衡器會自動剔除故障節(jié)點(diǎn)。去年有個(gè)分支行的網(wǎng)絡(luò)出故障,系統(tǒng)自動把當(dāng)?shù)乜蛻舻恼埱筠D(zhuǎn)到其他節(jié)點(diǎn),沒影響一筆業(yè)務(wù)。
![]()
踩了無數(shù)坑后,摩根大通總結(jié)出五大核心策略,每一個(gè)都經(jīng)過了實(shí)戰(zhàn)檢驗(yàn)。
第一個(gè)是多區(qū)域部署,把系統(tǒng)拆到不同區(qū)域,就算一個(gè)區(qū)域出問題,也只影響一小部分客戶,不會全崩。他們每10秒就檢查一次區(qū)域健康狀態(tài),決定是切換到備用區(qū)域還是降級服務(wù)。
![]()
第三個(gè)是全面自動化。他們搞了個(gè)“基礎(chǔ)設(shè)施重鋪”,每周或每兩周就自動重建一次基礎(chǔ)設(shè)施,清理舊實(shí)例、打補(bǔ)丁,避免配置混亂和安全漏洞。整個(gè)過程全自動化,先把流量移走再操作,客戶完全沒感覺。
第四個(gè)是可觀測性加自愈。系統(tǒng)里的任何異常,比如數(shù)據(jù)庫出問題、服務(wù)器負(fù)載高,都會觸發(fā)自動響應(yīng)。比如數(shù)據(jù)庫故障會自動切換,不用人工干預(yù)。健康檢查也搞了多層級,從應(yīng)用到可用區(qū)再到整個(gè)網(wǎng)絡(luò),只返回“健康”或“不健康”,簡單直接好判斷。
![]()
最后一個(gè)是分層安全,采用零信任模型。客戶端、邊緣、內(nèi)部網(wǎng)絡(luò)、容器、應(yīng)用、數(shù)據(jù),每一層都獨(dú)立防護(hù),就算一層破了,其他層還能擋住。比如惡意流量在邊緣就被攔截,不會跑到核心系統(tǒng)里。
![]()
吉林銀行那邊也不錯(cuò),云平臺建好后,容災(zāi)中心的資源利用率大幅提升,運(yùn)維成本降了30%多,還滿足了監(jiān)管對金融數(shù)據(jù)安全的所有要求。
![]()
總結(jié)下來就是,大規(guī)模云和分布式應(yīng)用沒捷徑可走,都是在試錯(cuò)中總結(jié)經(jīng)驗(yàn)。摩根大通和吉林銀行的案例都說明,找對目標(biāo)、避開坑、用對策略,系統(tǒng)就能又穩(wěn)又好用。
不管是金融行業(yè)還是其他行業(yè),這些經(jīng)驗(yàn)都能借鑒。未來咱們的線上服務(wù)會越來越多,相信這些技術(shù)會讓咱們的使用體驗(yàn)越來越好。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.