小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

支付寶架構(gòu)師眼中的高并發(fā)架構(gòu)——3

 悅光陰 2021-08-12

面向服務(wù)

n  SOA面向服務(wù)架構(gòu)設(shè)計(jì)

n  微服務(wù)更細(xì)粒度服務(wù)化,一系列的獨(dú)立的服務(wù)共同組成系統(tǒng)

使用服務(wù)化思維,將核心業(yè)務(wù)或者通用的業(yè)務(wù)功能抽離成服務(wù)獨(dú)立部署,對(duì)外提供接口的方式提供功能。

最理想化的設(shè)計(jì)是可以把一個(gè)復(fù)雜的系統(tǒng)抽離成多個(gè)服務(wù),共同組成系統(tǒng)的業(yè)務(wù),優(yōu)點(diǎn):松耦合,高可用性,高伸縮性,易維護(hù)。

通過(guò)面向服務(wù)化設(shè)計(jì),獨(dú)立服務(wù)器部署,均衡負(fù)載,數(shù)據(jù)庫(kù)集群,可以讓服務(wù)支撐更高的并發(fā)

n  服務(wù)例子:

n  用戶行為跟蹤記錄統(tǒng)計(jì)

n  說(shuō)明:

n  通過(guò)上報(bào)應(yīng)用模塊,操作事件,事件對(duì)象,等數(shù)據(jù),記錄用戶的操作行為

n  比如:記錄用戶在某個(gè)商品模塊,點(diǎn)擊了某一件商品,或者瀏覽了某一件商品

n  背景:

n  由于服務(wù)需要記錄用戶的各種操作行為,并且可以重復(fù)上報(bào),準(zhǔn)備接入服務(wù)的業(yè)務(wù)又是核心業(yè)務(wù)的用戶行為跟蹤,所以請(qǐng)求量很大,高峰期會(huì)產(chǎn)生大量并發(fā)請(qǐng)求。

n  架構(gòu):

n  nodejs WEB應(yīng)用服務(wù)器均衡負(fù)載

n  redis主從集群

n  mysql主

n  nodejs+express+ejs+redis+mysql

n  服務(wù)端采用nodejs,nodejs是單進(jìn)程(PM2根據(jù)cpu核數(shù)開啟多個(gè)工作進(jìn)程),采用事件驅(qū)動(dòng)機(jī)制,適合I/O密集型業(yè)務(wù),處理高并發(fā)能力強(qiáng)

n  業(yè)務(wù)設(shè)計(jì):

n  并發(fā)量大,所以不能直接入庫(kù),采用:異步同步數(shù)據(jù),消息隊(duì)列

n  請(qǐng)求接口上報(bào)數(shù)據(jù),接口將上報(bào)數(shù)據(jù)push到redis的list隊(duì)列中

n  nodejs寫入庫(kù)腳本,循環(huán)pop redis list數(shù)據(jù),將數(shù)據(jù)存儲(chǔ)入庫(kù),并進(jìn)行相關(guān)統(tǒng)計(jì)Update,無(wú)數(shù)據(jù)時(shí)sleep幾秒

n  因?yàn)閿?shù)據(jù)量會(huì)比較大,上報(bào)的數(shù)據(jù)表按天命名存儲(chǔ)

n  接口:

n  上報(bào)數(shù)據(jù)接口

n  統(tǒng)計(jì)查詢接口

n  上線跟進(jìn):

n  服務(wù)業(yè)務(wù)基本正常

n  每天的上報(bào)表有上千萬(wàn)的數(shù)據(jù)

冗余,自動(dòng)化

當(dāng)高并發(fā)業(yè)務(wù)所在的服務(wù)器出現(xiàn)宕機(jī)的時(shí)候,需要有備用服務(wù)器進(jìn)行快速的替代,在應(yīng)用服務(wù)器壓力大的時(shí)候可以快速添加機(jī)器到集群中,所以我們就需要有備用機(jī)器可以隨時(shí)待命。 最理想的方式是可以通過(guò)自動(dòng)化監(jiān)控服務(wù)器資源消耗來(lái)進(jìn)行報(bào)警,自動(dòng)切換降級(jí)方案,自動(dòng)的進(jìn)行服務(wù)器替換和添加操作等,通過(guò)自動(dòng)化可以減少人工的操作的成本,而且可以快速操作,避免人為操作上面的失誤。

n  冗余

n  數(shù)據(jù)庫(kù)備份

n  備用服務(wù)器

n  自動(dòng)化

n  自動(dòng)化監(jiān)控

n  自動(dòng)化報(bào)警

n  自動(dòng)化降級(jí)

通過(guò)GitLab事件,我們應(yīng)該反思,做了備份數(shù)據(jù)并不代表就萬(wàn)無(wú)一失了,我們需要保證高可用性,首先備份是否正常進(jìn)行,備份數(shù)據(jù)是否可用,需要我們進(jìn)行定期的檢查,或者自動(dòng)化監(jiān)控, 還有包括如何避免人為上的操作失誤問(wèn)題。(不過(guò)事件中g(shù)itlab的開放性姿態(tài),積極的處理方式還是值得學(xué)習(xí)的)

總結(jié)

高并發(fā)架構(gòu)是一個(gè)不斷衍變的過(guò)程,冰洞三尺非一日之寒,長(zhǎng)城筑成非一日之功 。打好基礎(chǔ)架構(gòu)方便以后的拓展,這點(diǎn)很重要。

轉(zhuǎn)自:https://mp.weixin.qq.com/s/g0hUrgVZZ8iv3cDCxDZxpw

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多