看完這本書后,你會對如何設(shè)計(jì)大型網(wǎng)站架構(gòu),有非常清晰的思路。

如果還沒有讀" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運(yùn)營 > 干貨!史上最詳細(xì)腦圖《大型網(wǎng)站技術(shù)架構(gòu)》

干貨!史上最詳細(xì)腦圖《大型網(wǎng)站技術(shù)架構(gòu)》

時間:2023-04-18 22:54:02 | 來源:網(wǎng)站運(yùn)營

時間:2023-04-18 22:54:02 來源:網(wǎng)站運(yùn)營

干貨!史上最詳細(xì)腦圖《大型網(wǎng)站技術(shù)架構(gòu)》:

1. 介紹一下

《大型網(wǎng)站技術(shù)架構(gòu)》這本書可能很多人都看過,小編個人覺得真的是非常不錯的一本書。

看完這本書后,你會對如何設(shè)計(jì)大型網(wǎng)站架構(gòu),有非常清晰的思路。

如果還沒有讀過的小伙伴,趕緊去讀一讀吧。

PS:小編這里有這本書的Kiddle電子版,如有需要可聯(lián)系我獲取哦!










2. 架構(gòu)思路

1. 大型網(wǎng)站系統(tǒng)特點(diǎn)

既然談的是大型網(wǎng)站架構(gòu),所謂“大型”網(wǎng)站,首先需要了解大型網(wǎng)站系統(tǒng)具有什么樣的特點(diǎn)。一般大型網(wǎng)站系統(tǒng)都具有如下共同特點(diǎn):




2. 大型網(wǎng)站架構(gòu)核心要素

基于大型網(wǎng)站系統(tǒng)的特點(diǎn),需要圍繞這些特點(diǎn)來設(shè)計(jì)系統(tǒng)架構(gòu)?;诖?,可以概括出設(shè)計(jì)大型網(wǎng)站需要考慮的核心架構(gòu)要素。

設(shè)計(jì)大型網(wǎng)站系統(tǒng)的核心架構(gòu)要素:

本書的核心內(nèi)容其實(shí)就是針對這幾個核心架構(gòu)要素一一展開。




1. 設(shè)計(jì)『 高性能 』的網(wǎng)站架構(gòu)

對于大型網(wǎng)站,設(shè)計(jì)高性能的架構(gòu)一般從以下幾個方面考慮:

所謂高性能,

從網(wǎng)站的用戶角度來看,無非就是訪問網(wǎng)站的『 響應(yīng)速度要快 』。

從系統(tǒng)角度看,由于同時訪問的用戶數(shù)巨大,因此同時到達(dá)系統(tǒng)服務(wù)器的『 并發(fā)請求數(shù) 』非常大。

從后端數(shù)據(jù)存儲來看,優(yōu)化『 海量數(shù)據(jù)存儲 』的能力,避免后端數(shù)據(jù)存儲性能緩慢而成為系統(tǒng)性能瓶頸。

優(yōu)化網(wǎng)站響應(yīng)速度

重要提示:
網(wǎng)站性能優(yōu)化第一定律:優(yōu)先考慮使用緩存技術(shù)優(yōu)化性能
優(yōu)化網(wǎng)站響應(yīng)速度的主要手段是使用『 緩存 』,使用緩存是提高網(wǎng)站響應(yīng)速度效果最顯著的辦法。

例如對于前端,可以使用CDN,反向代理,這些都是利用的緩存技術(shù)。對于應(yīng)用服務(wù)器的性能優(yōu)化,一個主要的手段也是使用緩存,在提高響應(yīng)速度的同時,也減輕了對后端數(shù)據(jù)庫的壓力。如果是有海量數(shù)據(jù)的超大型系統(tǒng),甚至需要用到分布式緩存系統(tǒng)。

另外一個優(yōu)化響應(yīng)速度的手段是『 異步消息處理 』。異步消息處理是指,在應(yīng)用服務(wù)器與后端服務(wù)之間使用消息隊(duì)列,應(yīng)用服務(wù)器總是將用戶請求扔進(jìn)消息隊(duì)列,并立即返回用戶,后端服務(wù)異步從消息隊(duì)列中取出請求數(shù)據(jù)進(jìn)行處理。由于請求發(fā)送到消息隊(duì)列后就立即返回了,因此用戶會感知到更快的響應(yīng)速度。

使用消息隊(duì)列還具有削峰的作用,當(dāng)瞬間有大量請求到達(dá)系統(tǒng)后,這些請求數(shù)據(jù)會進(jìn)入消息隊(duì)列,而不會瞬間涌入后端服務(wù)器,從而起到保護(hù)后端服務(wù)的作用。

優(yōu)化網(wǎng)站處理并發(fā)請求的能力

除此之外,還要支持巨大的并發(fā)請求數(shù),一般手段是使用『 集群 』。

應(yīng)用服務(wù)器一般需要從單臺服務(wù)器擴(kuò)展為多臺服務(wù)器,構(gòu)成應(yīng)用服務(wù)器集群,然后引入負(fù)載均衡服務(wù)器,將用戶請求分?jǐn)偟讲煌膽?yīng)用服務(wù)器進(jìn)行處理。

集群可以很容易進(jìn)行伸縮(增加或減少服務(wù)器數(shù)量),因此可以有效支持在不同場景下的不同并發(fā)請求量。如秒殺場景下,可以快速增加服務(wù)器到集群中,從而分?jǐn)傆脩粽埱?,減輕其他服務(wù)器的壓力。


優(yōu)化數(shù)據(jù)存儲的性能

單從優(yōu)化數(shù)據(jù)存儲性能方面來看,主要的優(yōu)化手段有:

2. 設(shè)計(jì)『 高可用 』的網(wǎng)站架構(gòu)

重要提示:
實(shí)現(xiàn)高可用架構(gòu)的主要手段是數(shù)據(jù)和服務(wù)的『 冗余備份 』和『 失效轉(zhuǎn)移 』
所謂高可用,即在任何時刻,應(yīng)該盡量保證系統(tǒng)是可用的。

使用集群實(shí)現(xiàn)數(shù)據(jù)和服務(wù)的冗余備份,當(dāng)集群中某個服務(wù)器宕機(jī)時,失效轉(zhuǎn)移機(jī)制會將用戶請求分發(fā)到集群中其他可用服務(wù)器上,從而可以保證用戶請求被正確處理。

使用集群有個前提條件是,各個服務(wù)器上運(yùn)行的服務(wù)應(yīng)盡量是無狀態(tài)的這樣各個服務(wù)器之間就不會存在差異。但是對于應(yīng)用服務(wù)器,如果保存了用戶Session數(shù)據(jù),那么它們就是有狀態(tài)的。這種情況下需要考慮如何處理Session狀態(tài)數(shù)據(jù)??梢圆捎锚?dú)立的分布式Session服務(wù)器集群來專門緩存用戶Session數(shù)據(jù),從而使應(yīng)用服務(wù)器變成無狀態(tài)的。

冗余備份與失效轉(zhuǎn)移手段適用于網(wǎng)站系統(tǒng)的各個邏輯層,包括應(yīng)用層,服務(wù)層和數(shù)據(jù)層。

3. 設(shè)計(jì)『 可伸縮 』的網(wǎng)站架構(gòu)

系統(tǒng)的可伸縮性,通常容易與可擴(kuò)展性混淆。

可伸縮性意味著當(dāng)網(wǎng)站流量變大時,可以很容易通過增加系統(tǒng)部署實(shí)例來支持。可擴(kuò)展性意味著系統(tǒng)架構(gòu)可以很容易擴(kuò)展,從而支持新業(yè)務(wù)功能系統(tǒng)。

為達(dá)到可伸縮的目的,通常需要將系統(tǒng)進(jìn)行拆分??v向進(jìn)行邏輯分層,如分為應(yīng)用層,服務(wù)層和數(shù)據(jù)層。橫向進(jìn)行業(yè)務(wù)分割,把不同的業(yè)務(wù)功能拆分出來,并且獨(dú)立部署。

對于拆分出來的單一功能,也需要采用集群方式進(jìn)行部署。但是對于不同類型的集群,實(shí)現(xiàn)伸縮的方式不太一樣。

對于應(yīng)用服務(wù)器集群,通常使用『 負(fù)載均衡 』來實(shí)現(xiàn)伸縮。當(dāng)有新服務(wù)器加入集群時,負(fù)載均衡可以自動將用戶請求分發(fā)到新服務(wù)器。

對于分布式緩存集群,當(dāng)有新服務(wù)器加入集群時,為了保證緩存命中率,通常使用『 一致性 』算法,從而使請求能夠絕大部分指向已經(jīng)緩存了所需數(shù)據(jù)的服務(wù)器。

對于數(shù)據(jù)存儲服務(wù)器集群,對傳統(tǒng)關(guān)系數(shù)據(jù)庫來說,通常的手段是進(jìn)行『 主、從數(shù)據(jù)庫復(fù)制 』實(shí)現(xiàn)讀寫分離,或者『 數(shù)據(jù)分庫分片 』等。然而對于NoSQL數(shù)據(jù)庫,很多NoSQL數(shù)據(jù)庫天生就是為可伸縮海量數(shù)據(jù)存儲而設(shè)計(jì)的,如HBase。

4. 設(shè)計(jì)『 可擴(kuò)展 』的網(wǎng)站架構(gòu)

網(wǎng)站系統(tǒng)架構(gòu)應(yīng)該是易于擴(kuò)展的。通常的設(shè)計(jì)手段包括:

5. 設(shè)計(jì)『 安全 』的網(wǎng)站架構(gòu)

系統(tǒng)安全性,對于任何網(wǎng)站系統(tǒng)都是至關(guān)重要的。

對于大型網(wǎng)站,由于用戶分布廣,網(wǎng)絡(luò)安全環(huán)境會更加復(fù)雜和惡劣,設(shè)計(jì)具有良好安全性的網(wǎng)站架構(gòu)會更加具有挑戰(zhàn)性。

一般可以考慮以下幾個方面:

思維導(dǎo)圖

以下是我親自整理的思維導(dǎo)圖

如果上面的大圖看著不方便,我也把它放在了Github,訪問我的Github地址https://github.com/longyg/Study下載,然后用XMind打開輕松看,包括圖里的詳細(xì)標(biāo)注也可以看得到啦。







圖: 網(wǎng)絡(luò)

文: 新碼農(nóng)客棧

排版: 新碼農(nóng)客棧

掃碼關(guān)注公眾號,查看更多內(nèi)容




關(guān)鍵詞:技術(shù),大型,詳細(xì),干貨

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉