国产粉嫩无码不卡在线观看,酒店大战丝袜高跟鞋人妻,特级精品毛片免费观看,欧美亚洲日本国产综合在线

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

引子

如果我們調(diào)研一個(gè)客戶的業(yè)務(wù)操作人員,讓他談?wù)剬?duì)資金系統(tǒng)的可用性的期望?客戶大概率的回答可能是:“我期望這個(gè)系統(tǒng)隨時(shí)都可用,不要出任何問題”,直覺上我們都期望一個(gè)系統(tǒng)永遠(yuǎn)在線,不出問題。那么從工程的角度如何對(duì)高可用(High availability,即 HA)去科學(xué)的定義呢?業(yè)界一般用幾個(gè)九來衡量系統(tǒng)的可用性,如下:

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

通過具體的數(shù)據(jù)量化后,我們對(duì)所謂的“高可用”的預(yù)期就更清晰化了,對(duì)照這個(gè)表格,我們就可以來分析,我們的業(yè)務(wù)能接受一天里系統(tǒng)能夠有多久時(shí)間,處于不可用的狀態(tài)。

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

一、資金管理系統(tǒng)場(chǎng)景分析

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

資金系統(tǒng)的常規(guī)業(yè)務(wù)架構(gòu)

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

高可用的量化,和企業(yè)對(duì)資金系統(tǒng)的可用性的期待,對(duì)構(gòu)建合適的系統(tǒng)架構(gòu)非常有必要,現(xiàn)實(shí)中往往會(huì)有兩種不合理的現(xiàn)象:

● 企業(yè)投入大量軟、硬件資源,構(gòu)建高可用的系統(tǒng),但是無論用戶數(shù)、還是業(yè)務(wù)量都不需要這種配置,浪費(fèi)資源。

● 部分企業(yè)的IT負(fù)責(zé)人對(duì)高可用架構(gòu)的難度和投入認(rèn)識(shí)不足,軟、硬件的投入完全無法支撐對(duì)系統(tǒng)的可用性期待。

二、如何設(shè)計(jì)高可用

1、架構(gòu)分析

我們都熟悉一句俗話叫著“不能把雞蛋放到同一個(gè)籃子里”,這個(gè)也道出了高可用設(shè)計(jì)的一個(gè)真諦那就是【冗余】,但是光有【冗余】還是不夠,在高可用的架構(gòu)設(shè)計(jì)里是存在“主備”的概念的,當(dāng)“主”出現(xiàn)問題,“備”需要頂上,但是這個(gè)過程不能依賴人工,因?yàn)闆]有人能夠時(shí)時(shí)刻刻去監(jiān)控機(jī)器是否正常,這個(gè)時(shí)候就需要設(shè)計(jì)【自動(dòng)故障轉(zhuǎn)移】。簡(jiǎn)要總結(jié):【冗余,自動(dòng)故障轉(zhuǎn)移】是高可用架構(gòu)設(shè)計(jì)的需要解決的兩個(gè)核心要點(diǎn)。

那么一個(gè)系統(tǒng)的哪些部分需要去冗余呢?又如何去做自動(dòng)故障轉(zhuǎn)移呢?這個(gè)就需要對(duì)系統(tǒng)的整體組成部分進(jìn)行分析,拜特科技資金管理系統(tǒng)目前的整體結(jié)構(gòu)大致如下圖,我們就結(jié)合這個(gè)示意圖,從整個(gè)請(qǐng)求鏈來分析如何進(jìn)行實(shí)現(xiàn):

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

可以看到架構(gòu)主要分以下幾層:

● 接入層:主要由 F5 硬件或 LVS 軟件來承載所有的流量入口;

● 反向代理層:Nginx,主要負(fù)責(zé)根據(jù) url 來分發(fā)流量,限流等;

● 網(wǎng)關(guān):主要負(fù)責(zé)流控,風(fēng)控,協(xié)議轉(zhuǎn)換等;

● 業(yè)務(wù)服務(wù):完成核心業(yè)務(wù)微服務(wù);

● 存儲(chǔ)層:也就是 DB,如 MysqlOracle 等;

● 中間件:ZK,ES,Redis,MQ 等。

如前所述,要實(shí)現(xiàn)整體架構(gòu)的高可用,必須要實(shí)現(xiàn)每一層組件的高可用,接下來我們就來分別看一下每一層的組件都是如何實(shí)現(xiàn)高可用的。

2、接入層&反向代理層

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

接入層核心組件是:LVS、Nginx、keepalived ,通過虛擬IP技術(shù),兩個(gè) LVS 以主備的形式對(duì)外提供服務(wù),注意 只有 master 在工作(即此時(shí)的 VIP 在 master 上生效),另外一個(gè) backup 在 master 宕機(jī)之后會(huì)接管 master 的工作,另外LVS通過keepalived維護(hù)可以轉(zhuǎn)發(fā)的Nginx列表,從而也實(shí)現(xiàn)了Nginx的故障轉(zhuǎn)移。

3、微服務(wù)

微服務(wù),我們以開源 dubbo 框架為例,來看下服務(wù)層的高可用是如何實(shí)現(xiàn)的。

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

微服務(wù)架構(gòu)下,核心的角色包括:服務(wù)提供者、服務(wù)消費(fèi)者、注冊(cè)中心,整體原理:首先 Provider(服務(wù)提供者)向 Registry(注冊(cè)中心,如 ZK 或 Nacos 等)注冊(cè)服務(wù),然后 Consumer(服務(wù)消費(fèi)者)向注冊(cè)中心訂閱和拉取 Provider 服務(wù)列表,獲取服務(wù)列表后,Consumer 就可以根據(jù)其負(fù)載均衡策略選擇其中一個(gè) Provider 來向其發(fā)出請(qǐng)求,當(dāng)其中某個(gè) Provider 不可用(下線或者因?yàn)?GC 阻塞等)時(shí),會(huì)被注冊(cè)中心及時(shí)監(jiān)聽(通過心跳機(jī)制)到,也會(huì)及時(shí)推送給 Consumer,這樣 Consumer 就能將其從可用的 Provider 列表中剔除,也就實(shí)現(xiàn)了故障的自動(dòng)轉(zhuǎn)移,這個(gè)場(chǎng)景下注冊(cè)中心就起到了類似 keepalived 的作用。

4、數(shù)據(jù)庫

數(shù)據(jù)庫層面拜特科技的客戶使用的數(shù)據(jù)庫以Mysql,與Oracle為主,生產(chǎn)上我們常用的數(shù)據(jù)庫層高可用方案一般有如下幾種:

● 基于共享存儲(chǔ)的雙機(jī)熱備方案

基于存儲(chǔ)的雙機(jī)熱備方案是基于磁盤陣列的數(shù)據(jù)庫高可用方案,數(shù)據(jù)的安全性由磁盤陣列的容錯(cuò)機(jī)制保障,在軟件存儲(chǔ)該方案部署維護(hù)簡(jiǎn)單,數(shù)據(jù)庫服務(wù)切換、VIP切換以及磁盤資源的切換過程都由第三方軟件管理,用戶層面只維護(hù)一臺(tái)數(shù)據(jù)服務(wù),數(shù)據(jù)也不需要再做同步。

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

● Mysql主從方案

近些年來,隨著開源軟件的發(fā)展,Mysql數(shù)據(jù)庫在企業(yè)級(jí)的應(yīng)用也越來越廣泛,Mysql主從復(fù)制方案也越來越多的被企業(yè)采用。Mysql主從方案中Master數(shù)據(jù)庫的改變會(huì)通過binlog日志傳到slave數(shù)據(jù)庫,slave數(shù)據(jù)庫通過執(zhí)行Binlog與主數(shù)據(jù)庫數(shù)據(jù)同步,當(dāng)Master出現(xiàn)故障時(shí),可以自動(dòng)或者手動(dòng)通過keepalived把VIP切換到Slave,原來的Slave會(huì)變成新的Master,并對(duì)外提供服務(wù),待原Master修復(fù)后重新恢復(fù)同步。

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

Oracle RAC集群方案

針對(duì)企業(yè)資金系統(tǒng)應(yīng)用,Oracle RAC集群方案是大型集團(tuán)客戶采用較多的數(shù)據(jù)庫高可用方案,數(shù)據(jù)保存在磁盤陣列上,通過磁盤陣列冗余和校驗(yàn)保障數(shù)據(jù)高可用,數(shù)據(jù)庫多個(gè)實(shí)例節(jié)點(diǎn)可以同時(shí)訪問磁盤陣列,客戶端可以連接任意一個(gè)實(shí)例節(jié)點(diǎn),存取數(shù)據(jù),可以實(shí)現(xiàn)數(shù)據(jù)庫負(fù)載均衡。Oracle Dataguard組件可以通過日志把陣列上數(shù)據(jù)庫同步到遠(yuǎn)程Standby數(shù)據(jù)庫,實(shí)現(xiàn)異地?cái)?shù)據(jù)容災(zāi)。

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

三、客戶案例

1、微服務(wù)架構(gòu)

某電氣集團(tuán),中國(guó)工業(yè)制造業(yè)的領(lǐng)軍品牌,歷史至少可以追溯到1902年,創(chuàng)造了中國(guó)與世界眾多第一。榮獲中國(guó)工業(yè)領(lǐng)域最高獎(jiǎng)項(xiàng)—中國(guó)工業(yè)大獎(jiǎng),入選《全球制造500強(qiáng)》、《財(cái)富》中國(guó)500強(qiáng) 。入選《全球制造500強(qiáng)》、《財(cái)富》中國(guó)500強(qiáng) ,2021年ENR全球最大250強(qiáng)國(guó)際承包商排名全球第51位 ,下圖是該客戶的司庫解決方案中系統(tǒng)部署整體架構(gòu)圖。

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

我們?yōu)樵摽蛻艏軜?gòu)的技術(shù)方案充分結(jié)合當(dāng)前主流技術(shù)架構(gòu),從接入層、業(yè)務(wù)邏輯層、數(shù)據(jù)庫、中間件各層構(gòu)建高可用、高性能架構(gòu),為企業(yè)的資金業(yè)務(wù)開展構(gòu)建了堅(jiān)實(shí)的信息化地基。

2、同城雙活

某銀行,開放銀行云財(cái)資系統(tǒng)同城雙活架構(gòu)。

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

技術(shù)架構(gòu)—同城雙活架構(gòu)

談?wù)勝Y金管理系統(tǒng)高可用架構(gòu)設(shè)計(jì)

技術(shù)架構(gòu)—部署方案

在該案例中,我們通過微服務(wù)、分布式數(shù)據(jù)庫、中間件集群,實(shí)現(xiàn)了同城雙機(jī)房雙活金融級(jí)別高可用架構(gòu)。

四、安全防護(hù)

以上我們給出的各種形式的高可用架構(gòu),前提都是建立在系統(tǒng)正常運(yùn)行的基礎(chǔ)上的,但是我們都知道現(xiàn)在整體上網(wǎng)絡(luò)環(huán)境并不安全,例如:2022年8月28日至29日,某知名軟件廠商旗下產(chǎn)品大面積遭受勒索病毒攻擊,大量用戶計(jì)算機(jī)文件被.locked后綴的勒索病毒加密。被勒索后,需要支付0.2個(gè)比特幣。因此安全性防護(hù)作為系統(tǒng)高可用的一個(gè)容易忽視的點(diǎn),同樣不能掉以輕心,為此我們針對(duì)拜特科技資金系統(tǒng)的特性制定了以下安全性防護(hù)策略供我們的客戶來參考實(shí)施。

1、標(biāo)準(zhǔn)化:

● windows系統(tǒng)一定要有殺毒軟件,并定時(shí)更新病毒庫;

● 客戶服務(wù)器不下載不明軟件;

● 除公司服務(wù)端口外,屏蔽不需要端口;

● 公司統(tǒng)一提供標(biāo)準(zhǔn)中間件產(chǎn)品包(包括Tomcat、Mysql、FTP、SFTP、Redis、Nginx);

● 有外網(wǎng)訪問的客戶必須使用服務(wù)器證書。

2、建議部分:

● 數(shù)據(jù)庫、應(yīng)用建議安裝到Linux操作系統(tǒng),除銀行前置機(jī);

● 建議客戶有專門安全運(yùn)維人員,定時(shí)做安全檢查,更新病毒庫等;

● 客戶推薦配置一定要有防火墻 。

3、底線操作:

● 數(shù)據(jù)庫一定要有備份,并且一定要有異機(jī)備份(離線備份或不同操作系統(tǒng)數(shù)據(jù)備份) 建議每天備份一次;

● 各產(chǎn)品線備份注意T2產(chǎn)品可能問題及改進(jìn)措施數(shù)據(jù)安全:數(shù)據(jù)庫,附件(標(biāo)準(zhǔn)化推薦)、回單(增量備份);

● 銀行接口可能問題及改進(jìn)措施 數(shù)據(jù)安全:日志數(shù)據(jù)(備份一個(gè)月,增量)。

本文簡(jiǎn)要的介紹了高可用架構(gòu)在資金管理系統(tǒng)建設(shè)的落地,通過以上的分析希望能夠?qū)π枰暇€資金管理系統(tǒng)的客戶有一定的指導(dǎo)作用,當(dāng)今新技術(shù)層出不窮幾乎到了“亂花漸欲迷人眼”的地步,那么在高可用這塊,我們要如何去選擇呢?我總結(jié)了幾個(gè)關(guān)鍵字 “簡(jiǎn)單”、“適用”、“可演進(jìn)”,高可用架構(gòu)的設(shè)計(jì)不是越高級(jí)越先進(jìn)越好,重點(diǎn)結(jié)合自己企業(yè)的實(shí)際情況,選擇對(duì)的,而不是單純的貴的。

最后,歡迎大家針對(duì)系統(tǒng)的安全性,可用性等相關(guān)問題跟我們探討交流,一起讓我們的資金系統(tǒng)更高效、更安全、更穩(wěn)定。

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。