中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

中小型網(wǎng)站架構(gòu)分析及優(yōu)化

2019-03-26    來源:JobBole.com

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

先看網(wǎng)站架構(gòu)圖:

以上網(wǎng)站架構(gòu)廣泛運用中大型網(wǎng)站中,本文從架構(gòu)每一層分析所用主流技術(shù)和解決手段,有助于初入網(wǎng)站運維朋友們,進一步對網(wǎng)站架構(gòu)認識,從而自己形成一套架構(gòu)概念。

第一層:CDN

國內(nèi)網(wǎng)絡(luò)分布主要南電信北聯(lián)通,造成跨地區(qū)訪問延遲大問題,對于有一定訪問量網(wǎng)站來說,增加CDN(內(nèi)容分發(fā)網(wǎng)絡(luò))層可有效改善此現(xiàn)象,也是網(wǎng)站加速的最好選擇。CDN把網(wǎng)站頁面緩存到全國分布的節(jié)點上,用戶訪問時從最近的機房獲取數(shù)據(jù),這樣大大減少網(wǎng)絡(luò)訪問的路徑。如果想自己搭建CDN,不建議這么做,因為什么呢?其實說白了,就是什么事別往運維上攔。CDN架構(gòu)部署不復(fù)雜,影響效果的因素卻很多,后期管理維護也比較復(fù)雜,想達到預(yù)期的效果確非易事,這是一個費力不討好的活,最后老板還是感覺是你能力不足。建議找專做CDN的公司,費用也不貴,有抗流量攻擊能力,效果也很好,運維也少很多事,何樂而不為呢!

第二層:反向代理(網(wǎng)頁緩存)

如果CDN沒有緩存要請求的數(shù)據(jù)則向這層發(fā)起請求,在代理服務(wù)器配置緩存功能(本地),代理服務(wù)器就查找本地緩存是否有CDN請求的數(shù)據(jù),如果有就直接返回給CDN,如果沒有則請求后端負載均衡器然后轉(zhuǎn)發(fā)給WEB服務(wù)器返回數(shù)據(jù)給代理服務(wù)器,代理服務(wù)器再將結(jié)果給CDN。代理服務(wù)器一般緩存不經(jīng)常變動的靜態(tài)頁面,如image、js、css、html等,主流的緩存軟件有Squid、Varnish、Nginx。

第三層:負載均衡

訪問量較大的網(wǎng)站都會用到負載均衡,因為這是解決單臺服務(wù)器性能瓶頸的最好辦法。反向代理將請求轉(zhuǎn)發(fā)給負載均衡器,負載均衡器根據(jù)算法(輪訓、負載情況選擇后端等)交給后端WEB服務(wù)處理,WEB服務(wù)處理完成后直接返回數(shù)據(jù)給反向代理服務(wù)器。負載均衡合理分配請求給后端多臺WEB服務(wù)器,減輕單臺服務(wù)器并發(fā)負載,并保證服務(wù)可用性。主流的負載均衡軟件有LVS、HAProxy、Nginx。

第四層:WEB服務(wù)

WEB服務(wù)是處理用戶請求的,WEB服務(wù)處理效率,直接影響到訪問速度,為避免這層因素造成訪問慢,應(yīng)對其進行調(diào)優(yōu),讓WEB服務(wù)發(fā)揮到最佳狀態(tài)。常見的WEB服務(wù)有Apache和Nginx。

Apache優(yōu)化:

1).mod_deflate壓縮模塊

查看是否加載:

# apachectl M |grep deflate

如果沒有安裝使用apxs編譯進去:

# /usr/local/apache/bin/apxs c I A apache源碼目錄/modules/mod_deflate.c

deflate配置參數(shù):

DeflateCompressionLevel6      #壓縮等級(1-9),數(shù)值越大效率越高,消耗CPU也就越高 SetOutputFilterDEFLATE      #啟用壓縮 AddOutputFilterByTypeDEFLATE text/html text/plain text/xml #壓縮類型 AddOutputFilterByTypeDEFLATE css js html htm xml php

2).mod_expires緩存模塊

查看是否加載:

# apachectl M |grep expires

如果沒有安裝使用apxs編譯進去:

# /usr/local/apache/bin/apxs c I A apache源碼目錄/modules/mod_expires.c

再在httpd.conf啟用模塊:LoadModule expires_module modules/mod_expires.so

緩存機制有三種用法:全局、目錄和虛擬主機

全局配置,在配置文件末尾添加:

ExpiresActiveon       #啟用有效期控制,會自動清除已過期的緩存,然后從服務(wù)器獲取新的 ExpiresDefault "accessplus 1 days"       #默認任意格式的文檔都是1天后過期 ExpiresByTypetext/html "access plus 12 months"   ExpiresByTypeimage/jpg "access plus 12 months"   #jpg格式圖片緩存12月

3).工作模式選擇及優(yōu)化

apache有兩種常見工作模式,worker和prefork,默認是worker,是混合型的MPM(多路處理模塊),支持多進程和多線程,由線程來處理請求,所以可以處理更多請求,提高并發(fā)能力,系統(tǒng)資源開銷也小于基于進程的MPM,由于線程使用進程內(nèi)存空間,進程崩潰會導致其下線程崩潰。而prefork是非線程型MPM,進程占用系統(tǒng)資源也比worker多,由于進程處理連接,在工作效率上也比worker更穩(wěn)定。可通過apache2 l查看當前工作模式,在編譯時使用—with-mpm參數(shù)指定工作模式。根據(jù)自己業(yè)務(wù)需求選擇不同工作模式,再適當增加工作模式相關(guān)參數(shù),可提高處理能力。

配置參數(shù)說明:

StartServers      8   #默認啟動8個httpd進程 MinSpareServers    5    #最小的空閑進程數(shù) MaxSpareServers    20   #最大的空閑進程數(shù),如果大于這個值,apache會自動kill一些進程 ServerLimit      256   #服務(wù)器允許進程數(shù)的上限 MaxClients       256  #同時最多發(fā)起多少個訪問,超過則進入隊列等待 MaxRequestsPerChild  4000  #每個進程啟動的最大線程

標簽: 網(wǎng)站架構(gòu)優(yōu)化 網(wǎng)站優(yōu)化 大型網(wǎng)站架構(gòu) 

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:如何構(gòu)建對百度友好的移動站點?

下一篇:百度蝶變行動干貨:網(wǎng)站SEO、頁面抓取等問題答疑