資源描述:
《基于nginx的服務(wù)器負(fù)載均衡器實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、開題報(bào)告畢業(yè)設(shè)計(jì)題目:基于nginx的服務(wù)器負(fù)載均衡器實(shí)現(xiàn)11本科畢業(yè)論文(設(shè)計(jì))開題報(bào)告班級(jí)姓名論文題目基于nginx的服務(wù)器負(fù)載均衡器實(shí)現(xiàn)目錄:一、選題背景及意義二、國(guó)內(nèi)外研究現(xiàn)狀三、擬解決的主要問題四、總體研究思路五、實(shí)驗(yàn)環(huán)境搭建和測(cè)試六、預(yù)期研究成果七、研究工作計(jì)劃參考文獻(xiàn)成績(jī):答辯意見答辯組長(zhǎng)簽名:年月日系主任審核意見簽名:年月日11一、選題的背景及意義Intnet的規(guī)模每一百天就會(huì)增長(zhǎng)一倍,客戶希望獲得7*24的不間斷可用性及較快的系統(tǒng)反應(yīng)時(shí)間,而不愿屢次看到某個(gè)站點(diǎn)“servertoobusy”及頻繁的
2、系統(tǒng)故障。但隨著互聯(lián)網(wǎng)用戶數(shù)目迅速擴(kuò)容,并發(fā)訪問人數(shù)不斷增加,服務(wù)器負(fù)載越來越重,常常造成超負(fù)荷運(yùn)載。目前,超負(fù)荷服務(wù)器提供服務(wù)時(shí)暴露出了以下問題:[1](1)服務(wù)器的服務(wù)能力遠(yuǎn)遠(yuǎn)不能滿足用戶實(shí)際需求。雖然各個(gè)廠商的服務(wù)器性能逐步提高,處理芯片不斷升級(jí),內(nèi)存、硬盤不斷擴(kuò)容,但仍然無(wú)法滿足急劇膨脹的用戶訪問需求。長(zhǎng)遠(yuǎn)來看,單純的硬件升級(jí)決不是根本的解決方法。(2)服務(wù)器可靠性無(wú)法保證。服務(wù)器本身的軟件、硬件和網(wǎng)絡(luò)連接等問題理論上都有可能造成服務(wù)器出現(xiàn)相關(guān)各種故障。因此,在故障恢復(fù)前,用戶會(huì)在一段時(shí)間內(nèi)得不到應(yīng)有的服務(wù),
3、對(duì)于一些要求高可靠性的網(wǎng)絡(luò)系統(tǒng)而言是致命的缺點(diǎn),因此帶來的危害后果十分嚴(yán)重。(3)服務(wù)響應(yīng)時(shí)間長(zhǎng),延遲大,無(wú)法滿足用戶需求。服務(wù)器忙時(shí)反應(yīng)能力下降,會(huì)造成用戶端連接速度緩慢、延遲增加,即使服務(wù)器相對(duì)正常,由于服務(wù)器繁忙造成的擁塞同樣會(huì)影響對(duì)用戶的服務(wù)。(4)存在服務(wù)器單點(diǎn)故障。隨著用戶訪問量的增加,服務(wù)器負(fù)擔(dān)將不斷增加,很容易造成服務(wù)器崩潰而停止服務(wù),這對(duì)許多實(shí)時(shí)性要求高的網(wǎng)絡(luò)服務(wù)將是致命打擊。在此情況下,如果扔掉現(xiàn)有設(shè)備去做大量的硬件升級(jí),勢(shì)必造成現(xiàn)有資源的浪費(fèi),而且如果面臨下一次業(yè)務(wù)量的提升,又將導(dǎo)致再一次硬件升
4、級(jí)的高額成本投入,因此即使性能再卓越的設(shè)備也不能滿足當(dāng)前業(yè)務(wù)量需求的快速發(fā)展。于是,負(fù)載技術(shù)應(yīng)運(yùn)而生[2]。負(fù)載均衡(loadbalance)技術(shù)是建立在現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)之上,它提供了一種廉價(jià)、有效、透明的方法用于擴(kuò)展網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬,同時(shí)增加系統(tǒng)吞吐量、加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力、提高網(wǎng)絡(luò)的靈活性和可用性。其核心思想是采用增加同時(shí)工作的服務(wù)器數(shù)量的方法,根據(jù)當(dāng)前服務(wù)器的負(fù)載情況,將到達(dá)的大量用戶請(qǐng)求合理分配到不同的服務(wù)器上進(jìn)行處理,以減輕單個(gè)服務(wù)器的處理負(fù)擔(dān),從而極大地提高服務(wù)器性能,使資源得到最大效率的利用[3]。1
5、1二、國(guó)內(nèi)外研究現(xiàn)狀負(fù)載均衡從不同角度可以分為三類,第一類是軟件/硬件的負(fù)載均衡技術(shù)。軟件負(fù)載均衡技術(shù)就是利用現(xiàn)有的服務(wù)器資源,通過編寫軟件實(shí)現(xiàn)服務(wù)器負(fù)載均衡。[4]與硬件負(fù)載均衡相比,是一種充分利用現(xiàn)有資源、能夠節(jié)約資金、負(fù)載均衡措施靈活、現(xiàn)實(shí)有效的方法;基于硬件的負(fù)載均衡,即將負(fù)載均衡功能形成專門的硬件。所有服務(wù)器通過該硬件來提供對(duì)外服務(wù)。但負(fù)載均衡器容易成為外部用戶訪問數(shù)據(jù)中心的瓶頸,而且硬件設(shè)備價(jià)格昂貴[5]。負(fù)載均衡從其應(yīng)用的地理結(jié)構(gòu)上,分為本地負(fù)載均衡和全局負(fù)載均衡。本地負(fù)載均衡是指對(duì)本地的服務(wù)器群做負(fù)載
6、均衡,全局負(fù)載均衡是指在不同地理位置、有不同網(wǎng)絡(luò)結(jié)構(gòu)的服務(wù)器群間做負(fù)載均衡[6]。從算法上主要分為靜態(tài)負(fù)載均衡算法和動(dòng)態(tài)負(fù)載均衡算法。靜態(tài)負(fù)載均衡算法是利用事先知道的應(yīng)用問題的眾多特征(如任務(wù)大小、任務(wù)間通信量、個(gè)服務(wù)器處理性能)進(jìn)行負(fù)載分配分,力圖達(dá)到一個(gè)全局最有或接近最優(yōu)的效果[7]。靜態(tài)負(fù)載均衡算法主要包括輪轉(zhuǎn)調(diào)度算法[8]、加權(quán)輪轉(zhuǎn)調(diào)度算法[9]、目的地址散列[10]、源地址散列[11]等。但由于靜態(tài)負(fù)載均衡算法事先確定了分發(fā)策略,算法在執(zhí)行任務(wù)的過程中,分發(fā)策略并不隨著外部環(huán)境的變化而改變。而網(wǎng)絡(luò)上任務(wù)的到
7、達(dá)時(shí)間、到達(dá)的數(shù)量多少都是未知的,因此服務(wù)器的執(zhí)行具有盲目性。當(dāng)一臺(tái)服務(wù)器任務(wù)過多時(shí),未執(zhí)行的任務(wù)只能排隊(duì)等候,而不會(huì)被轉(zhuǎn)移到其他的可能空閑的服務(wù)器上。這就會(huì)出現(xiàn)一臺(tái)服務(wù)器忙碌而其他服務(wù)器空閑的情況,服務(wù)器的性嫩歸咎會(huì)有所下降,也造成了資源浪費(fèi)。這種算法的優(yōu)點(diǎn)是不會(huì)產(chǎn)生額外的開銷[12]。動(dòng)態(tài)負(fù)載均衡算法考慮到了服務(wù)器實(shí)時(shí)的負(fù)載和響應(yīng)情況看,不斷調(diào)整服務(wù)器處理請(qǐng)求的比例,以此來避免服務(wù)器超載是依然能收到大量請(qǐng)求,從而提高了整個(gè)系統(tǒng)的吞吐率。相比于靜態(tài)負(fù)載均衡算法,這種算法更靈活,更有效[13]。由于集群系統(tǒng)運(yùn)行一段時(shí)
8、間后,各臺(tái)服務(wù)器的負(fù)載狀況會(huì)與調(diào)度器上記錄的負(fù)載量產(chǎn)生一定的偏移,因此需要通過周期性的負(fù)載信息查詢來修正調(diào)度器上的記錄。這種“查詢—修正—任務(wù)分配—查詢”11的機(jī)制我們稱為動(dòng)態(tài)反饋機(jī)制。由于動(dòng)態(tài)反饋機(jī)制需要額外的系統(tǒng)開銷,所以對(duì)于每一個(gè)服務(wù)請(qǐng)求,我們不可能都進(jìn)行一次負(fù)載信息查詢,因此只能在每個(gè)周期時(shí)間間隔做一次節(jié)點(diǎn)信息查詢。動(dòng)態(tài)負(fù)載均衡算法主要