資源描述:
《基于nginx高并發(fā)web服務(wù)器的改進(jìn)與實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、分類(lèi)號(hào):TP393.2單位代碼:10183研究生學(xué)號(hào):2013544116密級(jí):公開(kāi)吉林大學(xué)碩士學(xué)位論文(專(zhuān)業(yè)學(xué)位)基于Nginx高并發(fā)Web服務(wù)器的改進(jìn)與實(shí)現(xiàn)TheImprovementandImplementofHighConcurrencyWebServerBasedonNginx作者姓名:張堯類(lèi)別:工程碩士領(lǐng)域(方向):軟件工程指導(dǎo)教師:房至一教授培養(yǎng)單位:軟件學(xué)院2016年5月基于Nginx高并發(fā)Web服務(wù)器的改進(jìn)與實(shí)現(xiàn)TheImprovementandImplementofHighConcurrencyWebServerBasedonNginx
2、作者姓名:張堯領(lǐng)域(方向):軟件工程指導(dǎo)教師:房至一教授類(lèi)別:工程碩士答辯日期:2016年5月28日未經(jīng)本論文作者的書(shū)面授權(quán),依法收存和保管本論文書(shū)面版本、電子版本的任何單位和個(gè)人,均不得對(duì)本論文的全部或部分內(nèi)容進(jìn)行任何形式的復(fù)制、修改、發(fā)行、出租、改編等有礙作者著作權(quán)的商業(yè)性使用(但純學(xué)術(shù)性使用不在此限)。否則,應(yīng)承擔(dān)侵披的法律責(zé)任。吉林大學(xué)碩±學(xué)位論文原創(chuàng)性聲明本人鄭重聲明:所呈交學(xué)位論文,是本人在指導(dǎo)教師的指導(dǎo)下。,獨(dú)立進(jìn)行研巧;工作所取得的成果除文中己經(jīng)注明引用的內(nèi)容外,本論文不包含任何其他個(gè)人或集體己經(jīng)發(fā)表或撰寫(xiě)過(guò)
3、的作品成果。對(duì)本文的研究做出重要貢獻(xiàn)的個(gè)人和集體,均己在文中明確方式標(biāo)明。本人完全意識(shí)到本聲明的法律結(jié)果由本人承擔(dān)。學(xué)位論文作者簽名:曰期;2016年5月^(2曰摘要基于Nginx高并發(fā)Web服務(wù)器的改進(jìn)與實(shí)現(xiàn)目前,互聯(lián)網(wǎng)已經(jīng)得到了廣泛的普及與應(yīng)用,甚至離開(kāi)互聯(lián)網(wǎng)我們將無(wú)法正常的工作和生活。個(gè)人電腦和移動(dòng)設(shè)備的發(fā)展,使得即時(shí)信息與娛樂(lè)服務(wù)變的更加方便精巧,基礎(chǔ)用戶的不斷增加使得應(yīng)用訪問(wèn)量變得巨大。為了提供安全可靠的服務(wù),服務(wù)器端正在面臨著越來(lái)越大的壓力??紤]到系統(tǒng)的可擴(kuò)展性和成本效益,各技術(shù)團(tuán)隊(duì)相繼提出了集群分布式的技術(shù)構(gòu)建自己的服務(wù)器
4、體系系統(tǒng)。高并發(fā)Web服務(wù)器端的負(fù)載均衡技術(shù),作為集群體系系統(tǒng)研究的核心,解決了系統(tǒng)在接受大量請(qǐng)求時(shí)任務(wù)合理分配的問(wèn)題。Nginx作為高效的Web服務(wù)器,已經(jīng)成功的幫助許多技術(shù)團(tuán)隊(duì)解決服務(wù)器端高負(fù)載的問(wèn)題。本文首先介紹了Nginx系統(tǒng)模塊架構(gòu)以及進(jìn)程工作原理。然后對(duì)原有加權(quán)輪詢、IP哈希以及最少連接數(shù)策略進(jìn)行了分析,針對(duì)其優(yōu)缺點(diǎn),提出一種動(dòng)態(tài)調(diào)節(jié)權(quán)重的負(fù)載均衡策略。這種動(dòng)態(tài)策略是在原有加權(quán)輪詢策略進(jìn)行了改進(jìn),根據(jù)運(yùn)行中節(jié)點(diǎn)的CPU、內(nèi)存、磁盤(pán)IO以及網(wǎng)絡(luò)的性能情況,對(duì)節(jié)點(diǎn)權(quán)重進(jìn)行動(dòng)態(tài)的更新,使運(yùn)行中的系統(tǒng)各節(jié)點(diǎn)能夠分配到與其當(dāng)前負(fù)載能力相對(duì)應(yīng)的請(qǐng)求任務(wù)量,
5、增強(qiáng)了集群的性能,提高了效率。通過(guò)分析Nginx的模塊源碼以及數(shù)據(jù)結(jié)構(gòu),設(shè)計(jì)了這種動(dòng)態(tài)策略的處理流程并且進(jìn)行了實(shí)現(xiàn)。最后,利用siege性能測(cè)試工具對(duì)原有加權(quán)輪詢策略和本文所提出動(dòng)態(tài)策略進(jìn)行性能測(cè)試,通過(guò)實(shí)驗(yàn)證明,本文所提出的這種動(dòng)態(tài)策略更好的實(shí)現(xiàn)了負(fù)載均衡。相比于原有負(fù)載均衡策略,本文提出的這種動(dòng)態(tài)調(diào)節(jié)權(quán)重的負(fù)載均衡策略具有如下幾個(gè)特點(diǎn):(1)更綜合的節(jié)點(diǎn)性能評(píng)估,通過(guò)對(duì)后端服務(wù)器各節(jié)點(diǎn)CPU、內(nèi)存、磁盤(pán)IO以及網(wǎng)絡(luò)帶寬等性能情況收集,計(jì)算得出該節(jié)點(diǎn)的性能權(quán)重,相比與經(jīng)驗(yàn)性的賦值,這種計(jì)算方法更加綜合有效。(2)設(shè)定權(quán)重修改閾值,在動(dòng)態(tài)調(diào)節(jié)權(quán)重的負(fù)載均衡
6、策略中,頻繁的修改權(quán)重,有時(shí)不僅不會(huì)帶來(lái)性能的提高,反而會(huì)造成系統(tǒng)的抖動(dòng),所以通過(guò)計(jì)算節(jié)點(diǎn)資源使用率標(biāo)準(zhǔn)差,來(lái)判斷節(jié)點(diǎn)負(fù)載是否均衡,如果不均衡,即標(biāo)準(zhǔn)差高于預(yù)先設(shè)定的閾值,則啟動(dòng)權(quán)重修改流程。(3)設(shè)定冗余的概念,周期性的收集節(jié)點(diǎn)負(fù)載信息,為了更好的對(duì)周期內(nèi)節(jié)點(diǎn)負(fù)載情況作出預(yù)測(cè),防止節(jié)點(diǎn)過(guò)載,根據(jù)上一周期的負(fù)載情況,計(jì)算該周期的冗余性能,當(dāng)冗余值過(guò)低,則對(duì)該節(jié)點(diǎn)分配更少的任務(wù)。(4)動(dòng)態(tài)的修改權(quán)重,當(dāng)判斷需要對(duì)權(quán)值進(jìn)行修改時(shí),系統(tǒng)會(huì)根據(jù)該節(jié)點(diǎn)資源利用率的情況,計(jì)算出一個(gè)增量,對(duì)于該節(jié)點(diǎn)負(fù)載的過(guò)多或過(guò)少,實(shí)行權(quán)重對(duì)該增量的減法和加法的操作,并將變動(dòng)的權(quán)值進(jìn)行
7、I更新。關(guān)鍵詞:高并發(fā),Nginx,Web服務(wù)器,負(fù)載均衡IIAbstractTheImprovementandImplementofHighConcurrencyWebServerBasedonNginxAtpresent,theInternethasbeenwidelyspreadandapplication,evenleavetheInternetwewillnotbeabletoworkandlivenormally.Thedevelopmentofpersonalcomputersandmobiledevicesmakestheinstantin
8、formationandentertainmentservices