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

基于SSH框架的高并發(fā)與高可用網(wǎng)站架構(gòu)的設(shè)計(jì)與開發(fā)

2020-11-10 04:38:45張鵬
電腦知識(shí)與技術(shù) 2020年27期

張鵬

摘要:互聯(lián)網(wǎng)技術(shù)的逐步成熟使得越來越多的用戶進(jìn)入網(wǎng)絡(luò),享受網(wǎng)絡(luò)給自己生活帶來的便捷。但是,用戶的增多給許多商業(yè)網(wǎng)站提出了新的挑戰(zhàn)。如何在大用戶量訪問網(wǎng)站時(shí),保證網(wǎng)站的流暢度和穩(wěn)定性,成為判斷一個(gè)商業(yè)網(wǎng)站是否成功的顯著標(biāo)志。該文基于SSH框架提出了一種高并發(fā)、高可用網(wǎng)站架構(gòu)以解決上述問題。首先利用SSH技術(shù)構(gòu)建服務(wù)器端,利用集群理念,延伸服務(wù)器數(shù)量,形成服務(wù)器集群。通過Nginx技術(shù)實(shí)現(xiàn)多服務(wù)器間的負(fù)載均衡,減輕大訪問量單一服務(wù)器上的壓力,保證服務(wù)器的高可用性。同時(shí),使用RabbitMQ消息隊(duì)列的異步處理機(jī)制,對(duì)訪問高峰期請(qǐng)求進(jìn)行削峰處理,減少響應(yīng)所需時(shí)間,提高網(wǎng)站高并發(fā)處理能力。

關(guān)鍵詞:負(fù)載均衡;高并發(fā);高可用;消息隊(duì)列

中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1009-3044(2020)27-0100-02

開放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):

1 引言

互聯(lián)網(wǎng)技術(shù)日趨成熟帶來了大量用戶的網(wǎng)站訪問需求,高并發(fā)[1]和高可用已經(jīng)成為對(duì)于一個(gè)成熟的商業(yè)網(wǎng)站必備的要求。而以往的單服務(wù)器網(wǎng)站面對(duì)高并發(fā)的情形時(shí),極易導(dǎo)致單位時(shí)間內(nèi)服務(wù)器壓力驟增,既無法及時(shí)響應(yīng)用戶請(qǐng)求,而且容易導(dǎo)致服務(wù)器崩潰,降低系統(tǒng)可用性。面對(duì)以上問題,本系統(tǒng)采用集群理念,延伸服務(wù)器數(shù)量,形成服務(wù)器集群[3],保證在一臺(tái)服務(wù)器宕機(jī)的情況下,仍有其他服務(wù)器可用。并且通過Nginx技術(shù)實(shí)現(xiàn)多服務(wù)器間的負(fù)載均衡[2],實(shí)現(xiàn)網(wǎng)站的高可用性。同時(shí),使用RabbitMQ消息隊(duì)列[4-5]的異步處理機(jī)制,對(duì)訪問高峰期請(qǐng)求進(jìn)行削峰處理,減少響應(yīng)所需時(shí)間,提高網(wǎng)站高并發(fā)處理能力。

2 系統(tǒng)分析與設(shè)計(jì)

網(wǎng)站整體架構(gòu)如圖1所示,當(dāng)網(wǎng)站遭遇高并發(fā)時(shí),大量的用戶請(qǐng)求從瀏覽器端進(jìn)入到后臺(tái)服務(wù)器。此時(shí)Nginx會(huì)根據(jù)服務(wù)器權(quán)重優(yōu)先級(jí)進(jìn)行請(qǐng)求分配,實(shí)現(xiàn)負(fù)載均衡,減輕單服務(wù)器處理壓力。為保證在高并發(fā)時(shí),網(wǎng)站達(dá)到減少服務(wù)器響應(yīng)時(shí)間、增強(qiáng)用戶體驗(yàn)度的目標(biāo),網(wǎng)站架構(gòu)中加入消息隊(duì)列服務(wù)器,通過其異步處理功能,使得網(wǎng)站系統(tǒng)在不影響響應(yīng)速度的同時(shí),利用消息驅(qū)動(dòng)機(jī)制,降低數(shù)據(jù)庫壓力,最終形成一個(gè)高并發(fā)、高可用的網(wǎng)絡(luò)架構(gòu)。

2.1 服務(wù)器的設(shè)計(jì)

服務(wù)器端采用SSH框架技術(shù)進(jìn)行設(shè)計(jì),如圖2所示,采用SSH框架[6-8]進(jìn)行服務(wù)器設(shè)計(jì)的優(yōu)點(diǎn)在于各個(gè)框架可以發(fā)揮各自在Web應(yīng)用各層上的特點(diǎn),互相協(xié)同,實(shí)現(xiàn)“低耦合、高內(nèi)聚”的軟件系統(tǒng)設(shè)計(jì)思想。在JavaEE分層設(shè)計(jì)結(jié)構(gòu)中,Hibernate框架主要負(fù)責(zé)數(shù)據(jù)持久層,進(jìn)行數(shù)據(jù)庫的交互處理工作;Struts框架專注于控制層工作,對(duì)用戶請(qǐng)求響應(yīng)進(jìn)行控制調(diào)度;而Spring框架利用其IOC和AOP技術(shù),貫穿于各層當(dāng)中,負(fù)責(zé)整個(gè)Web項(xiàng)目中類的集中管理,通過IOC容器進(jìn)行各類的實(shí)例化創(chuàng)建工作。并且借助于AOP技術(shù)[9]實(shí)現(xiàn)核心業(yè)務(wù)與輔助業(yè)務(wù)相分離,真正做到各模塊間低耦合的設(shè)計(jì)效果。

2.2 Nginx技術(shù)與服務(wù)器集群的分析與使用

當(dāng)大量的用戶請(qǐng)求從瀏覽器端進(jìn)入到后臺(tái)服務(wù)器時(shí),如圖3所示,Nginx會(huì)根據(jù)服務(wù)器權(quán)重優(yōu)先級(jí)進(jìn)行請(qǐng)求分配,將用戶請(qǐng)求進(jìn)行分流,減輕單位時(shí)間單體服務(wù)器的請(qǐng)求處理壓力,實(shí)現(xiàn)負(fù)載均衡,減輕單服務(wù)器處理壓力。同時(shí),Nginx在處理靜態(tài)文件的吞吐量?jī)?yōu)于tomcat,通過Nginx的反向代理功能,實(shí)現(xiàn)動(dòng)態(tài)資源請(qǐng)求與靜態(tài)資源請(qǐng)求相分離,即諸如css、png.js等靜態(tài)資源交由Nginx處理,而諸如jsp、servlet等動(dòng)態(tài)資源交由tomcat處理,從而達(dá)到動(dòng)靜分離的效果。本網(wǎng)站架構(gòu)充分利用集群理念,延伸服務(wù)器數(shù)量,形成服務(wù)器集群,保證在出現(xiàn)某一個(gè)服務(wù)器宕機(jī)的情況下,能夠?qū)崿F(xiàn)運(yùn)行不斷檔,形成一個(gè)高可用性網(wǎng)站架構(gòu)。

2.3 消息隊(duì)列服務(wù)器的設(shè)計(jì)

當(dāng)傳統(tǒng)的網(wǎng)絡(luò)架構(gòu)中遭遇高并發(fā)的情形時(shí),如圖4所示,大量的用戶請(qǐng)求會(huì)直接與數(shù)據(jù)庫進(jìn)行互動(dòng),導(dǎo)致數(shù)據(jù)庫瞬時(shí)壓力驟增,從而接受響應(yīng)的時(shí)間增加,嚴(yán)重影響用戶體驗(yàn)。本網(wǎng)站架構(gòu)中使用RabbitMQ作為消息隊(duì)列使用,如圖5所示。消息隊(duì)列的引入使得用戶請(qǐng)求在到達(dá)消息隊(duì)列服務(wù)器時(shí)立即返回,之后由消息隊(duì)列的消費(fèi)者進(jìn)程獲取剛剛的數(shù)據(jù),異步寫入數(shù)據(jù)庫。因消息隊(duì)列服務(wù)器在處理速度與伸縮性上均優(yōu)于數(shù)據(jù)庫,所以響應(yīng)速度得到大幅改善。

2.4 緩存機(jī)制的設(shè)計(jì)

在大并發(fā)量的情況下,大量的數(shù)據(jù)需要進(jìn)行讀取操作,如果每次程序都需要向數(shù)據(jù)庫直接做查詢操作,則其所帶來的性能開銷顯而易見,頻繁的網(wǎng)絡(luò)傳輸也會(huì)大大降低系統(tǒng)的整體性能。因此cache的引入對(duì)于解決高并發(fā)問題非常有效,它能讓數(shù)據(jù)在本地內(nèi)存中保留一個(gè)鏡像,下次訪問時(shí)只需從內(nèi)存中直接獲取,對(duì)于網(wǎng)站整體性能提升明顯。

在hibernate框架中,一級(jí)緩存存在于Session中,屬于事務(wù)級(jí)數(shù)據(jù)緩沖。一旦事務(wù)結(jié)束,一級(jí)Cache也隨之失效。同時(shí),如圖6所示,本網(wǎng)站架構(gòu)中增加第三方的數(shù)據(jù)庫連接池C3PO。因?yàn)榻?shù)據(jù)庫連接時(shí)會(huì)消耗一定時(shí)間,所以采用數(shù)據(jù)庫連接池技術(shù)預(yù)先建立多條數(shù)據(jù)庫連接,并在將來持續(xù)使用,從而節(jié)約掉建立數(shù)據(jù)庫連所需時(shí)間,C3PO的引入對(duì)于高并發(fā)隨機(jī)訪問數(shù)據(jù)庫時(shí)的效率提升有很大幫助。

3 實(shí)驗(yàn)

測(cè)試部分中,本文將上述所設(shè)計(jì)集群服務(wù)器架構(gòu)與傳統(tǒng)的單體服務(wù)器架構(gòu)相對(duì)比。通過JMeter發(fā)起海量并發(fā)數(shù)據(jù)請(qǐng)求,對(duì)兩種不同的架構(gòu)進(jìn)行壓力測(cè)試,驗(yàn)證其是否滿足高并發(fā)與高可用網(wǎng)絡(luò)架構(gòu)要求。表1展示了數(shù)據(jù)訪問性測(cè)試用例內(nèi)容。

為了保證數(shù)據(jù)訪問測(cè)試的可信度,本文分別從4個(gè)維度,對(duì)比兩種不同類型架構(gòu)數(shù)據(jù)訪問所需耗時(shí)。表2展示了在4種不同性能指標(biāo)下,兩種不同類型架構(gòu)的性能數(shù)據(jù)。

如圖7所示,通過對(duì)比測(cè)試,本文網(wǎng)站架構(gòu)在TP90、TP95、TP99各維度中均大幅度優(yōu)于傳統(tǒng)架構(gòu),網(wǎng)絡(luò)請(qǐng)求耗時(shí)相比之前更少、響應(yīng)速度更快、用戶體驗(yàn)流暢度更優(yōu)。滿足一個(gè)高并發(fā)與高可用網(wǎng)站架構(gòu)要求。

4 總結(jié)

本文是基于SSH框架提出了一種高并發(fā)、高可用網(wǎng)站架構(gòu)。主要是在面臨海量用戶請(qǐng)求業(yè)務(wù)場(chǎng)景時(shí),可以保證服務(wù)器快速響應(yīng)、運(yùn)行平穩(wěn),無差錯(cuò)。本文在SSH構(gòu)建服務(wù)器的基礎(chǔ)上形成集群,并輔之以Nginx高性能技術(shù)、RabbitMQ消息隊(duì)列和緩存機(jī)制等。經(jīng)過壓力測(cè)試,網(wǎng)絡(luò)請(qǐng)求耗時(shí)顯著減少,證明了本文所述框架的有效性。

參考文獻(xiàn):

[1]潘樂,胡鑫,余偉,等,一種高并發(fā)服務(wù)處理的優(yōu)化方法[J].信息技術(shù)與信息化,2020(3):22-24.

[2]張宇星,馬明棟,王得玉.基于Nginx負(fù)載均衡的動(dòng)態(tài)改進(jìn)算法[J].計(jì)算機(jī)技術(shù)與發(fā)展,2020,30(3):73-76,81.

[3]王瑛,基于Java應(yīng)用的高并發(fā)高可用集群服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2019(20):139-140.

[4]余永城,翁秋華,段卿,等.RabbitMQ在氣象通信系統(tǒng)中的應(yīng)用研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2020,30(4):216-220.

[5]陳思媛,易國洪,金旺.智能停車系統(tǒng)中消息中間件的設(shè)計(jì)與實(shí)現(xiàn)[J].武漢工程大學(xué)學(xué)報(bào),2020,42(2):224-230.

[6]何晶,以SSH框架與iQuery技術(shù)為基礎(chǔ)的Java-Web開發(fā)應(yīng)用探討[J].計(jì)算機(jī)產(chǎn)品與流通,2019(11):104-105.

[7]潘愷曄.基于SSM框架的CRM系統(tǒng)的實(shí)現(xiàn)[J].山東農(nóng)業(yè)工程學(xué)院學(xué)報(bào),2019,36(8):20-21,102.

[8]張健.基于SSH框架技術(shù)重構(gòu)OA管理系統(tǒng)的實(shí)現(xiàn)[J].信息技術(shù),2019,43(7):106-109,115.

[9]唐念剛,張勇.AOP技術(shù)在Web系統(tǒng)日志和事物管理中的應(yīng)用[J].電子設(shè)計(jì)工程,2017,25(16):42-45.

【通聯(lián)編輯:聞翔軍】

主站蜘蛛池模板: 亚洲一级无毛片无码在线免费视频| 久久黄色影院| 欧美一级特黄aaaaaa在线看片| 巨熟乳波霸若妻中文观看免费 | 人妻21p大胆| 日韩123欧美字幕| 欧美不卡视频一区发布| 国产免费自拍视频| 国产在线第二页| 免费xxxxx在线观看网站| 无码专区在线观看| 国产精品3p视频| 精品国产www| 亚洲激情区| 午夜一级做a爰片久久毛片| 亚洲不卡无码av中文字幕| 在线观看亚洲成人| 亚洲精品老司机| 亚洲人在线| 久久狠狠色噜噜狠狠狠狠97视色| 国产成在线观看免费视频| 综合网久久| 亚洲精品色AV无码看| 亚洲无码37.| 国内精品视频| 国产97区一区二区三区无码| 最新国产精品第1页| 欧美视频在线播放观看免费福利资源| 91最新精品视频发布页| jizz在线观看| 毛片卡一卡二| 伊人天堂网| 99免费在线观看视频| 秋霞国产在线| 亚洲色精品国产一区二区三区| 日本免费精品| 欧美笫一页| 欧美在线观看不卡| 久操线在视频在线观看| 欧美日韩另类在线| 久久精品亚洲中文字幕乱码| 色窝窝免费一区二区三区 | 九九热免费在线视频| 久久国产亚洲欧美日韩精品| 国产电话自拍伊人| 在线播放国产一区| 精品亚洲国产成人AV| 国产精品密蕾丝视频| 午夜小视频在线| 欧美日韩国产综合视频在线观看 | 亚洲香蕉伊综合在人在线| 亚洲天堂网在线视频| 成人日韩精品| 99久久精品视香蕉蕉| 男女性色大片免费网站| 亚洲天堂网在线观看视频| 国产午夜精品鲁丝片| 九九视频免费在线观看| 国产区人妖精品人妖精品视频| 天天综合网在线| 国产一区二区影院| 欧美一区福利| 国产激情在线视频| 天天做天天爱天天爽综合区| 亚洲精品中文字幕午夜| 亚洲人成网站18禁动漫无码| 欧美a在线| 免费无码AV片在线观看中文| 午夜在线不卡| 首页亚洲国产丝袜长腿综合| 欧美视频在线观看第一页| 日韩毛片免费观看| 综合色亚洲| 国产精品嫩草影院视频| 精品无码一区二区三区在线视频| 欧美影院久久| 2020精品极品国产色在线观看 | 日韩毛片在线视频| 国产剧情一区二区| 亚洲三级成人| 国产精品无码影视久久久久久久 | 久久久久国色AV免费观看性色|