999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Nginx的Web服務(wù)器負(fù)載均衡策略改進(jìn)與實現(xiàn)

2019-07-07 13:54:17周潮
科技資訊 2019年11期

摘? 要:互聯(lián)網(wǎng)產(chǎn)品隨著經(jīng)濟(jì)的快速發(fā)展越來越深地融入進(jìn)普通人的生活,網(wǎng)民的數(shù)量激增,各網(wǎng)站的訪問數(shù)字也呈逐年上升的態(tài)勢。但是由于各個地區(qū)網(wǎng)民人數(shù)的差異加上經(jīng)濟(jì)水平的不同,傳統(tǒng)的負(fù)載均衡策略存在改進(jìn)的空間,該文針對如何平衡負(fù)載進(jìn)行了研究,分析了Nginx系統(tǒng)的現(xiàn)狀,提供了負(fù)載均衡算法,以優(yōu)化Nginx的性能。

關(guān)鍵詞:Nginx? Web服務(wù)器? 性能優(yōu)化? 負(fù)載均衡

中圖分類號:TP393? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識碼:A? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1672-3791(2019)04(b)-0017-02

1? Nginx的研究現(xiàn)狀

Nginx是俄羅斯人塞索耶夫所撰寫的涉及到HTTP服務(wù)器的一款反向代理軟件,是一種和POP3、SMTP、IMAP相同的代理服務(wù)器。雖然這款服務(wù)器產(chǎn)生和發(fā)展的時間都不夠長,但是這種服務(wù)器已經(jīng)具備了一些鮮明的特點,使得其穩(wěn)定性和高消耗性能夠滿足開源和代碼編寫的基本需求,所以這種服務(wù)器在很多開發(fā)人員當(dāng)中受到歡迎,一些公司也大量采用,NGXPAGESPEED是一種谷歌借助Nginx所開發(fā)的模塊,這種模塊飛速地提升了網(wǎng)頁打開的速度,并且可以幫助網(wǎng)頁降低訪問的延遲。Nginx在我國的應(yīng)用非常廣泛,已經(jīng)有了大量的人員在研究這些項目,并且根據(jù)這個模塊開發(fā)出了不同的項目。針對大量網(wǎng)站的訪問申請,在這個平臺的基礎(chǔ)上,增加上更具特色的功能和特性,可以基本實現(xiàn)負(fù)載均衡。關(guān)于負(fù)載均衡的研究一直是這個領(lǐng)域的特色所在,相同的領(lǐng)域也一直有不同的算法被開發(fā)出來,分布式計算和云計算相關(guān)的新算法不斷被研究出來,在這個領(lǐng)域形成了鮮明的特色,節(jié)點和負(fù)載的性能經(jīng)常影響負(fù)載的衡量和權(quán)重,負(fù)載的值如果非常大,那么其權(quán)重一般也非常大。Nginx已經(jīng)在俄羅斯的門戶網(wǎng)站www.rambler.ru上運(yùn)行了多年,有超過20%的虛擬主機(jī)平臺選用了Nginx為反向代理服務(wù)器。我國也已經(jīng)有新浪博客、網(wǎng)易新聞、金山詞霸等多家網(wǎng)站選用了這種服務(wù)器。塞索耶夫?qū)㈤_源的代碼以類似于BSD許可證的方法發(fā)布,Nginx由于性能非常穩(wěn)定,功能方面具有富集效應(yīng),在配置基礎(chǔ)文件和系統(tǒng)資源的時候功率消耗比較低,和Nginx負(fù)載相關(guān)的均衡計算研究方法的類型之中,很多內(nèi)容集中在服務(wù)器集群之上,根據(jù)算法和配置文件的不同,內(nèi)置的算法有不同的類型,加權(quán)輪詢的算法也是其中的一個種類,一致性哈希算法也算是其中的一種。

2? 負(fù)載均衡的概念

負(fù)載均衡是針對現(xiàn)有的網(wǎng)絡(luò)結(jié)構(gòu)提出來的概念,提供了一種廉價而高效的方法,建立在現(xiàn)有的網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)之上,可以增加網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬,增強(qiáng)網(wǎng)絡(luò)內(nèi)容的吞吐量,強(qiáng)化網(wǎng)絡(luò)的數(shù)據(jù)處理能力,提升網(wǎng)絡(luò)服務(wù)的靈活性和可用性。負(fù)載均衡一般是通過硬件實現(xiàn)的,有時也可以通過軟件實現(xiàn),負(fù)載均衡可以提升網(wǎng)絡(luò)處理數(shù)據(jù)的靈活性和可靠性。軟件負(fù)載均衡是通過一臺或多臺服務(wù)器的相互連接,在操作系統(tǒng)之上加裝附加軟件來實現(xiàn)負(fù)載均衡,優(yōu)點是可以根據(jù)特定環(huán)境的不同,進(jìn)行簡單配置、靈活操作,由于成本低廉,可以基本滿足一般的負(fù)載均衡需求,硬件的負(fù)載均衡解決方案是在服務(wù)器和外部網(wǎng)絡(luò)之上加載負(fù)載均衡的設(shè)備,我們將這種設(shè)備稱為負(fù)載均衡器,可以由專門的設(shè)備完成相應(yīng)的任務(wù),這些設(shè)備獨立于操作系統(tǒng)之外,整體性能可以獲得提升。根據(jù)多樣化的負(fù)載均衡策略,進(jìn)行智能化的流量管理升級,可以達(dá)到最佳的負(fù)載均衡要求。一般來說,硬件的負(fù)載均衡會優(yōu)于軟件的負(fù)載均衡,硬件的負(fù)載均衡在功能和性能方面要優(yōu)于軟件,但是硬件更加昂貴。現(xiàn)代化的負(fù)載均衡技術(shù)通常在網(wǎng)絡(luò)的第四層次或者第七層次,四層的負(fù)載均衡是將Internet 上的合法IP地址映射到多個服務(wù)器之上,最終達(dá)到負(fù)載均衡的目的。七層的負(fù)載均衡是控制應(yīng)用層的內(nèi)容,可以提供一種針對流量的訪問控制模式。針對HTTP服務(wù)器的應(yīng)用指標(biāo),第七層的負(fù)載均衡技術(shù)可以通過HTTP的報頭,根據(jù)報頭的內(nèi)容實現(xiàn)負(fù)載均衡的操作。

3? 和Nginx相關(guān)的負(fù)載均衡算法

與Nginx有關(guān)聯(lián)的負(fù)載均衡算法的種類非常多,負(fù)載均衡所要達(dá)到的目標(biāo)就是通過并發(fā)的方式,將不同的請求分配給集群服務(wù)器,根據(jù)算法內(nèi)置的差異,可以將內(nèi)置算法分成不同的種類,分別是擴(kuò)展算法和內(nèi)置算法。加權(quán)輪詢的算法模式一般都被認(rèn)為是內(nèi)置算法的一個種類,哈希性算法一般被認(rèn)為是擴(kuò)展算法的一個種類。

3.1 加權(quán)輪詢的算法

在設(shè)置與負(fù)載均衡有關(guān)的算法的時候,根據(jù)負(fù)載均衡是默認(rèn)值還是輪詢算法的不同,考慮到加權(quán)輪詢算法的缺點,根據(jù)輪詢算法的重復(fù)方面的配置問題,服務(wù)器的真實性能可能會難以保證,由于客戶端對于客戶的請求的處理方法會有不一致的地方,因此會產(chǎn)生一些均衡方面的差異,導(dǎo)致一些服務(wù)器的比重出現(xiàn)增大的狀況。很多用戶會因此出現(xiàn)長時間等待的問題,如果出現(xiàn)了新的請求需要處理的問題,還涉及到某類服務(wù)器的比重過大的問題,新的請求在這種狀態(tài)下就會被要求分給服務(wù)器。服務(wù)器在負(fù)荷較大的情況下可能會出現(xiàn)超載的問題,但是其他的一些服務(wù)器在這個時候可能會遇到請求需要處理的情況。

3.2 一致性哈希算法

這種算法的原理是根據(jù)服務(wù)器地址的不同,按照一定的規(guī)則進(jìn)行分配,分配的方法類似于路由分配表,根據(jù)服務(wù)器承載的服務(wù)的類型進(jìn)行區(qū)分,將同樣的內(nèi)容分配到一致性的哈希表當(dāng)中,如果有新的數(shù)據(jù)請求需要進(jìn)行處理,可以根據(jù)哈希表之中的數(shù)據(jù)順序進(jìn)行處理,選擇最新的服務(wù)器來對請求進(jìn)行處理。哈希算法的優(yōu)點是可以將服務(wù)器的地址按照一定的規(guī)則進(jìn)行處理,快速地尋找到存儲這種數(shù)據(jù)類型的服務(wù)器,但是這樣的設(shè)置也有一些缺點,比如根據(jù)路由狀態(tài)的不同所形成的哈希表,會和一些服務(wù)器分屬于不同的緩存服務(wù)器,在這樣的情況下會因為IP段的請求的種類不同,分配一些不同的內(nèi)容于服務(wù)器之上。

4? Nginx負(fù)載均衡的優(yōu)點和環(huán)境適應(yīng)性

4.1 Nginx負(fù)載均衡的優(yōu)點

Nginx負(fù)載均衡的現(xiàn)實環(huán)境情況較為簡單,可配置性比較強(qiáng),根據(jù)URL進(jìn)行的負(fù)載均衡,默認(rèn)后端進(jìn)行健康檢查的性能,后端機(jī)器在較少的情況之下,負(fù)載均衡的表現(xiàn)能力較強(qiáng),優(yōu)點主要有如下幾點。(1)負(fù)載的功能強(qiáng)大,同時支持高端并發(fā)的連接,實現(xiàn)的內(nèi)存消耗較少,測試的時候得到了5萬并發(fā)的連接,實際的運(yùn)行環(huán)境之中進(jìn)行3萬發(fā)的并發(fā)連接下,進(jìn)行10個Nginx的進(jìn)程所消耗掉的內(nèi)存也僅僅只有150MB。(2)成本造價低廉,Nginx為開源的軟件,所以可以進(jìn)行免費(fèi)試用,成本造價方面有優(yōu)勢。(3)由于Nginx工作在網(wǎng)絡(luò)的第七層級之上,因此針對HTTP本身的分流策略而言,可以對域名、目錄結(jié)構(gòu)等實現(xiàn)分流,實現(xiàn)多種策略的分配,比如說可以針對IP Hsh的分配策略實現(xiàn)均衡分配。

4.2 環(huán)境適應(yīng)性

七層次的均衡分配各自有其突出特點,主要表現(xiàn)在如下一些方面。(1)對HTTP的報頭進(jìn)行檢查,可以檢測到HTTP400和HTTP500系列的錯誤數(shù)值信息,可以實現(xiàn)透明且連續(xù)的重新定位到新的服務(wù)器,避免出現(xiàn)應(yīng)用層次的故障。(2)根據(jù)數(shù)據(jù)類型的不同,對不同類型的數(shù)據(jù)包,流入圖像文件、壓縮文件和多媒體文件等不同格式的文件進(jìn)行分類,根據(jù)數(shù)據(jù)流行的指引來對服務(wù)器的內(nèi)容進(jìn)行處理,如此可以提升系統(tǒng)的性能。(3)根據(jù)連接請求的類型不同,對普通文本以及圖像等靜態(tài)的內(nèi)容進(jìn)行處理,不論是CGI還是ASP等動態(tài)的文檔請求,都可以指引向特定的服務(wù)器,從而提升系統(tǒng)整體的安全性。(4)Nginx對于網(wǎng)絡(luò)的依賴性特別小,只有通過Ping上可以行得通,網(wǎng)頁訪問可以正常,Nginx就可以正常連接,Nginx同時還能對內(nèi)外網(wǎng)進(jìn)行區(qū)分,如果是同時用于許多的外網(wǎng)節(jié)點,可以根據(jù)單機(jī)對設(shè)備的路線進(jìn)行分配。(5)Nginx對于網(wǎng)絡(luò)的要求比較簡單,轉(zhuǎn)向業(yè)務(wù)配置分類之后的操作較為靈活,進(jìn)行文件配置也操作簡便,風(fēng)格和普通程序一樣比較容易弄懂,測試起來也非常方便,同時可以及時地對錯誤日志進(jìn)行打印操作。(6)Nginx所承受的高負(fù)載具有穩(wěn)定性,可以用于反向代理,出現(xiàn)宕機(jī)的概率也比較小。(7)通過Nginx可以檢測服務(wù)器內(nèi)部出現(xiàn)的故障,可以根據(jù)服務(wù)器處理網(wǎng)頁返回的代碼狀態(tài)和是否超時等因素進(jìn)行判斷,把返回的錯誤請求提交關(guān)鍵節(jié)點,內(nèi)置的健康檢查功能也可以嘗試運(yùn)用,有時還具有消滅冗余的功能,在針對后端返回的情況處理的判斷之中,可以嘗試運(yùn)用Nginx進(jìn)行Web服務(wù)器的宕機(jī)測試,也不會影響前端的訪問。(8)更加節(jié)省帶寬,由于是通過GZIP進(jìn)行的壓縮,所以可以添加游覽器的header本地接頭。

5? Nginx的性能優(yōu)化

Nginx一般支持正規(guī)的表達(dá)方式,配置非常靈活,是一種高性能的Web服務(wù)器,針對Nginx的性能進(jìn)行優(yōu)化的時候,一般只有一個配置的選項,可以在更改之后再次更改回原來的數(shù)值。如下幾個方面需要特別關(guān)注:(1)控制進(jìn)程數(shù)量的創(chuàng)制過程中,Nginx可以實現(xiàn)工作進(jìn)程的多個進(jìn)程的同時運(yùn)用,很多工作都可以實現(xiàn)對大量的鏈接數(shù)量的快速處理,Nginx可以通過主進(jìn)程對工作進(jìn)行某些方面的創(chuàng)建,很多數(shù)值都是通過文件配置的方式將Nginx當(dāng)中的文件進(jìn)行清理,如果出現(xiàn)數(shù)值比較低的狀況,會根據(jù)數(shù)據(jù)的有效處理的請求進(jìn)行分配。如果設(shè)置的數(shù)值的區(qū)間比較高,有可能出現(xiàn)工作進(jìn)程處置方面的問題,最終出現(xiàn)導(dǎo)致系統(tǒng)的功耗增加的問題,產(chǎn)生系統(tǒng)功耗的損失等情況。(2)大多數(shù)工作進(jìn)程都固定在CPU之內(nèi),這樣做的好處是避免了同一個工作進(jìn)程選擇不同的CPU內(nèi)核。(3)在設(shè)置Nginx模塊的時候,注意進(jìn)程可以打開的最大文件數(shù)的設(shè)置,如果這個數(shù)值設(shè)置得比較低,同時打開多個進(jìn)程數(shù)的時候,會出現(xiàn)打開的文件過多的提示。

6? 結(jié)語

國外的技術(shù)人員對于Nginx的研究逐步深入,這個技術(shù)的穩(wěn)定性、安全性和高效性兼具的特點使其值得進(jìn)行大范圍的應(yīng)用,我國的科技人員對該技術(shù)的研究也勢必大大增強(qiáng)。

參考文獻(xiàn)

[1] 劉暢.以NGINX為核心優(yōu)化掌端用戶使用體驗[J].江西通信科技,2019(1):17-20.

[2] 黎宇.Nginx在不同網(wǎng)絡(luò)域名訪問中的應(yīng)用[J].通訊世界,2019,26(2):88-89.

①作者簡介:周潮(1996,7—),男,漢族,湖北黃岡人,本科在讀,研究方向:基于nginx的web服務(wù)器負(fù)載均衡策略改進(jìn)與實現(xiàn)。

主站蜘蛛池模板: 国产黄色片在线看| av午夜福利一片免费看| 97视频在线观看免费视频| 在线中文字幕日韩| 26uuu国产精品视频| 九九热精品视频在线| 亚洲国产日韩一区| 国产成人一区免费观看| 国产视频a| 色妞www精品视频一级下载| 亚洲日韩第九十九页| 国产原创演绎剧情有字幕的| 亚洲综合国产一区二区三区| 国产成人AV男人的天堂| 99精品影院| 1级黄色毛片| 在线永久免费观看的毛片| 国产真实自在自线免费精品| 日本一区二区三区精品视频| 亚洲男人天堂网址| 亚洲精品在线影院| 国产精品福利导航| 毛片手机在线看| 中文字幕 日韩 欧美| 国产69精品久久| 国产高清国内精品福利| 中文字幕在线播放不卡| 麻豆国产在线观看一区二区| 黄色成年视频| 日本午夜三级| 亚洲无码四虎黄色网站| 高清精品美女在线播放| 欧美三級片黃色三級片黃色1| 国产在线视频导航| 1769国产精品视频免费观看| 成人无码区免费视频网站蜜臀| 国产美女丝袜高潮| 特级做a爰片毛片免费69| 无码福利日韩神码福利片| 精品国产香蕉伊思人在线| 欧美成人aⅴ| 亚洲熟女偷拍| 免费在线a视频| 亚洲欧美成人综合| 国产系列在线| 亚洲国产成人在线| 国产高清色视频免费看的网址| 欧美一级高清免费a| 国产高清精品在线91| 国产小视频a在线观看| 亚洲 欧美 中文 AⅤ在线视频| 综合人妻久久一区二区精品| 欧美色图久久| 国产日本欧美在线观看| 国产丝袜第一页| 欧美一级大片在线观看| 香蕉久久永久视频| 精品视频第一页| 亚洲品质国产精品无码| 欧洲免费精品视频在线| 不卡的在线视频免费观看| 午夜日b视频| 国产成人综合日韩精品无码首页| 国产在线视频导航| 亚洲国产成人自拍| 她的性爱视频| 国产高清在线精品一区二区三区 | 国产一区二区三区夜色| 久久无码av三级| 亚洲开心婷婷中文字幕| 国产精品va| 亚洲av无码牛牛影视在线二区| 成人综合在线观看| 日韩二区三区| 亚洲欧洲日产无码AV| 色香蕉影院| 欧美日韩国产在线人| 四虎永久在线视频| 久久综合五月| 国内精品久久久久鸭| 国产一区在线观看无码| 夜精品a一区二区三区|