在互聯(lián)網(wǎng)高速發(fā)展的今天,人們的娛樂、購物、支付等活動已經(jīng)離不開互聯(lián)網(wǎng)應(yīng)用。電腦手機等移動設(shè)備的快速發(fā)展,使得獲取信息的途徑更加多樣化,娛樂服務(wù)吏加精巧化。隨著網(wǎng)絡(luò)用戶訪間量的不斷增加,Web服務(wù)器的壓力成倍增加,會導(dǎo)致服務(wù)器宕機和數(shù)據(jù)庫崩潰等問題。本文通過對網(wǎng)上商城項目高并發(fā)場景的分析,總結(jié)了影響服務(wù)器并發(fā)量的客觀原因,針對這些因素,本文以數(shù)據(jù)庫緩存和高并發(fā)web服務(wù)器負載均衡技術(shù)為主,設(shè)計并優(yōu)化了服務(wù)器高并發(fā)訪問機制。本文主要對以下兒點展開研究(1)根據(jù)需求,選擇使用MyQL數(shù)據(jù)庫作為數(shù)據(jù)存儲器,本文分析了 MySQL數(shù)據(jù)庫的優(yōu)缺點,針對MyQL數(shù)據(jù)庫查詢提出了 MySQL查詢調(diào)優(yōu)方法,在高并發(fā)環(huán)境下為了保障數(shù)據(jù)庫的讀寫安全,設(shè)計并實現(xiàn)了 MySQL的主從復(fù)制。(2)分析了加入 Redis緩存數(shù)據(jù)庫的必要性,在高并發(fā)環(huán)境下,為了防止瞬時訪問數(shù)據(jù)庫的頻率過高以及惡意攻擊等問題,提出了在Web服務(wù)器與 MySQL數(shù)據(jù)庫之間加入Reis緩存數(shù)據(jù)庫,以保障數(shù)據(jù)的安全性,并極大地提高了數(shù)據(jù)的查詢效率。為了保障 Redis數(shù)據(jù)庫的可靠性,避免宕機或斷電產(chǎn)生的系列不可恢復(fù)的問題,設(shè)計并實現(xiàn)了 Redis集群策略,通過測試,證明了 Redis緩存的優(yōu)越性(3)分析了Web集群后會造成的負載分配問題,決定加入負載均衡策略,并提出了一種新的基于加權(quán)輪詢的動態(tài)負載均衡策略。這種動態(tài)策略會根據(jù)集群服務(wù)器節(jié)點的CPU、內(nèi)存、磁盤IO以及網(wǎng)絡(luò)性能的情況,計算負載權(quán)重,并根據(jù)節(jié)點對接口一段時間內(nèi)的響應(yīng)時間,獲取到響應(yīng)時間平均權(quán)重。負載權(quán)重和響應(yīng)寸間權(quán)重都與初始權(quán)重成負相關(guān),根據(jù)這一特性,動態(tài)地設(shè)定服務(wù)器節(jié)點的權(quán)重大小。通過 Jmeter測試工具測試負載均衡策略的性能,通過對比證明,本文的動態(tài)策略在響應(yīng)時間和吞吐量上優(yōu)于 Nginx內(nèi)置的加權(quán)輪詢策略,更加適應(yīng)高并發(fā)環(huán)境關(guān)鍵詞:Web服務(wù)器,高并發(fā),Redis,Nginx,負載均衡
標(biāo)簽:
web服務(wù)器
上傳時間:
2022-03-11
上傳用戶:kent