2020重新出發(fā),NOSQL,redis互聯(lián)網(wǎng)架構(gòu)分析

互聯(lián)網(wǎng)系統(tǒng)應(yīng)用架構(gòu)基礎(chǔ)分析

在互聯(lián)網(wǎng)系統(tǒng)中包含許多的工具,每個(gè)企業(yè)都有自己的架構(gòu),正如沒有完美的程序一樣,也不會(huì)有完美的架構(gòu)。

本節(jié)分析的架構(gòu)嚴(yán)格來說并不嚴(yán)謹(jǐn),但是卻包含了互聯(lián)網(wǎng)的思想,互聯(lián)網(wǎng)架構(gòu)如圖 1 所示。

互聯(lián)網(wǎng)架構(gòu)

圖 1 互聯(lián)網(wǎng)架構(gòu)

這不是一個(gè)嚴(yán)謹(jǐn)?shù)募軜?gòu),但是它包含了互聯(lián)網(wǎng)的許多特性。對于防火墻,無非是防止互聯(lián)網(wǎng)上的病毒和其他攻擊,正常的請求通過防火墻后,最先到達(dá)的就是負(fù)載均衡器,這是關(guān)注的核心。

負(fù)載均衡器有以下幾個(gè)功能:

  1. 對業(yè)務(wù)請求做初步的分析,決定分不分發(fā)請求到 Web 服務(wù)器,這就好比一個(gè)把控的關(guān)卡,常見的分發(fā)軟件比如 Nginx 和 Apache 等反向代理服務(wù)器,它們在關(guān)卡處可以通過配置禁止一些無效的請求。

    • 比如封禁經(jīng)常作弊的 IP 地址,也可以使用 Lua、C 語言聯(lián)合 NoSQL 緩存技術(shù)進(jìn)行業(yè)務(wù)分析,這樣就可以初步分析業(yè)務(wù),決定是否需要分發(fā)到服務(wù)器。
  2. 提供路由算法,它可以提供一些負(fù)載均衡的算法,根據(jù)各個(gè)服務(wù)器的負(fù)載能力進(jìn)行合理分發(fā),每一個(gè) Web 服務(wù)器得到比較均衡的請求,從而降低單個(gè)服務(wù)器的壓力,提高系統(tǒng)的響應(yīng)能力。

  3. 限流,對于一些高并發(fā)時(shí)刻,如雙十一、新產(chǎn)品上線,需要通過限流來處理,因?yàn)榭赡苣硞€(gè)時(shí)刻通過上述的算法讓有效請求過多到達(dá)服務(wù)器,使得一些 Web 服務(wù)器或者數(shù)據(jù)庫服務(wù)器產(chǎn)生宕機(jī)。

當(dāng)某臺(tái)機(jī)器宕機(jī)后,會(huì)使得其他服務(wù)器承受更大的請求量,這樣就容易產(chǎn)生多臺(tái)服務(wù)器連續(xù)宕機(jī)的可能性,持續(xù)下去就會(huì)引發(fā)服務(wù)器雪崩。

因此在這種情況下,負(fù)載均衡器有限流的算法,對于請求過多的時(shí)刻,可以告知用戶系統(tǒng)繁忙,稍后再試,從而保證系統(tǒng)持續(xù)可用。

如果順利通過了防火墻和負(fù)載均衡器的請求,那么負(fù)載均衡器就會(huì)通過設(shè)置的算法進(jìn)行計(jì)算后,將請求分發(fā)到某一臺(tái) Web 服務(wù)器上,由 Web 服務(wù)器通過分布式的 NoSQL 和數(shù)據(jù)庫提供服務(wù),這樣就能夠高效響應(yīng)客戶端的請求了。

從上面的分析可以知道,系統(tǒng)完全可以在負(fù)載均衡器中進(jìn)行初步鑒別業(yè)務(wù)請求,使得一些不合理的業(yè)務(wù)請求在進(jìn)入 Web 服務(wù)器之前就被排除掉,而為了應(yīng)對復(fù)雜的業(yè)務(wù),可以把業(yè)務(wù)存儲(chǔ)在 NoSQL(往往是 Redis)上,通過 C 語言或者 Lua 語言進(jìn)行邏輯判斷,它們的性能比 Web 服務(wù)器判斷的性能要快速得多。

通過這些簡單的判斷就能夠快速發(fā)現(xiàn)無效請求,并把它們排除在 Web 服務(wù)器之外,從而降低 Web 服務(wù)器的壓力,提高互聯(lián)網(wǎng)系統(tǒng)的響應(yīng)速度

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容