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

基于Nginx負載均衡架構的云計算分布式系統的設計與實現

2023-07-26 09:13:14彭好佑符天楊登攀傅翠玉姚堅
電腦知識與技術 2023年16期
關鍵詞:分配服務系統

彭好佑,符天,楊登攀,傅翠玉,姚堅

(海南軟件職業技術學院,海南 瓊海 571400)

0 引言

隨著信息技術的高速發展,互聯網用戶也得到巨大的增長,爆發式的高并發訪問請求給單一的服務器帶來嚴峻的挑戰,準確及時地響應高并發的訪問請求,是云計算分布式系統一個重要的研究熱點。架構相應的云計算分布式服務系統并實現高質量的負載均衡,是提高云計算服務的響應質量重要方式之一。

負載均衡是云計算分布式應用系統中最核心的技術之一。云計算分布式系統負載均衡最主要目的是通過相應分發策略,將用戶的并發請求通過分配策略平均分配給云計算的服務節點,使服務節點的平均請求響應時間最少,吞吐量最大,資源得到最充分的利用,避免某服務節點過載的目的[1]。在云計算分布式系統中,如果只是單一增加服務器數量,不采用適應負載均衡技術,將會導致有些服務屬于超負載運轉狀態,甚至會出現系統崩潰,而有些服務器卻處于空閑的狀態,影響云計算分布式系統服務質量,用戶體驗較差,系統資源利用率較低。因此,負載均衡算法的轉發策略影響整個云計算分布式系統的服務質量,采用合適的負載均衡器是云計算分布式系統考慮核心問題。Nginx是一個高性能的基于七層負載均衡的反向代理Web 服務器,具有穩定強、高并發、低消耗、安全性高,配置簡單靈活的特點[2],比較適合作為云計算分布式系統的負載均衡器。

本論文通過對負載均衡算法進行研究分析,采用Nginx 負載均衡器高響應并發請求,設計并搭建云計算分布式系統和監控模型,在高并發訪問中實現負載均衡,提高云計算分布式系統的可靠性和穩定性。

1 負載均衡算法

負載均衡算法是負載均衡器的核心部分,負載均衡器根據負載均衡算法將用戶并發請求平均分配到不同的服務器,在有限的系統資源中,實現資源利用的最大化。

1.1 負載均衡算法分類

目前常見的負載均衡算法主要有:

1) 硬件負載均衡。從專門的硬件設備上實現負載均衡功能[3],與系統無關,該設備具有負載均衡能力強,能使整個分布式系統達到最佳的性能,但缺點是設備價格昂貴,成本高。

2) 軟件負載均衡。將軟件安裝某硬件上作為負載均衡器[4],通過軟件來實現系統性能達到最佳的效果,軟件負載均衡器優點是配置靈活,具有各種請求調度算法,成本比較廉價。缺點是安裝和運行負載均衡軟件需要消耗計算機系統的額外開銷,很容易成為系統的性能瓶頸。

1.2 Nginx內置均衡算法

Nginx 基于軟件負載均衡算法,其負載均衡策略主要分兩種:內置負載均衡策略和擴展負載均衡策略。內置的負載均衡算法主要有:加權算法、輪詢算法、IP_hash 算法、fare 和url_hash 算法。外置的算法是根據需求,開發人員自己編寫的負載均衡算法。

1) 輪詢算法

該算法根據預先設定好的某種固定順序,按順序周期響應服務請求,當負載均衡器收到用戶請求后,按照預先制定輪詢分配方案,當一個周期結束,按原來固定順序開始新的周期分配給不同的服務節點。

2) 加權輪詢算法

加權輪詢算法根據設定好的權重,根據服務節點權重的大小,選擇權重最大的節點,選中該節點后,該節點的權重自動減1,并重新進行排序,重復以上步驟,根據權重來分發請求到不同的服務節點中,權重weight 和訪問比率成正比,用于后端服務器性能不均的情況。

3) IP hash算法

根據hash 算法將請求訪問服務器的IP 放入一張hash 表中[5],即根據IP 地址進行hash 散列算法找到其相應的后端服務器,把客戶端的請求分配該服務器。該算法主要優點是相同IP 地址將被分配到同一臺后端服務器,這種算法用于有狀態session 會話應用場景[6]。

4) url_hash 算法

按訪問url 的hash 結果來分配請求,使每個url 定向到同一個后端服務器,這種算法在后端服務器為緩存時比較有效。

5) fair 算法

按后端服務器的響應時間來分配請求,響應時間短的服務器優先分配[5]。這種算法適用于對訪問性能要求較高的業務應用,是一種更為智能的負載均衡算法。

2 云計算分布式系統的設計

云計算分布式系統架構的設計方案如圖1 所示,采用Nginx 中間件作為負載均衡器,實現云計算分布式系統在高并發訪問請求中負載均衡。Nginx負載均衡器通過的負載均衡算法把客戶端的用戶請求分配給適合后端Web服務器,后端Web服務器響應用戶的請求,把請求結果返回客戶端用戶,實現負載均衡。在該架構中,監控服務器定時收集后端Web服務器和Nginx負載均衡器性能信息,監控其運行狀態、負載情況,超過設定負載可發出警告信息,便于及時發現問題和維護。

圖1 云計算分布式系統架構

監控系統的設計。Prometheus是一款開源的監控系統,具備對Kubernetes管理的容器云的監控功能,可對容器云上的Node物理節點、應用容器、Kubernetes集群資源、容器應用運行狀態進行動態發現、監控和智能告警[7]。Grafana是一個開源的度量分析和可視化工具,可將采集的數據進行分析和查詢,最后實現可視化的展示和過載報警[8]。如圖2所示,云計算分布式系統監控方案采用Prometheus和Grafana 建立監控系統,分為數據收集、數據提取和數據展示三部分。在數據收集端的Web服務器中采用Node_exporter 監控工具,將被采集的數據信息通過HTTP服務的方式發給監控服務器Prometheus Server。在數據提取模塊,監控服務器Prometheus Server 負責獲取、查詢和保存被監控端的信息,將收集到監控端的數據保存到時序數據庫(Time Series Database,TSDB) 。數據展示端通過Grafana軟件實現可視化業務系統監控展示和過載警告信息的輸出。

圖2 監控系統模型

云計算分布式系統仿真平臺搭建需求如表1 所示,其中4 臺PC 機都在VMware Workstation 部署centos 7.6 操作系統,負載均衡采用Nginx實現,Web01和Web02 是部署PHP 和MySQL 的Web 服務器。客戶端為Win 10 操作系統PC 機,采用Apache Bench 工具模擬高并發訪問請求,測試云計算分布式系統性能,這5臺PC 通過網線連接在同一個交換機上。Prometheus Server實時采集Web01、Web02和Nginx負載均衡器的運行信息和負載情況,為云計算分布式系統的性能分析提供依據。

表1 10組并發總數4000個并發數500個高并發訪問請求測試

3 云計算分布式系統的實現

Web01 和Web02 中安裝Nginx 和MySQL,在Web01 和Web02 中修改nginx.conf,將Nginx 關聯PHP服務,完成的Web 服務器搭建。編寫測試腳本test.php,查詢數據庫test 中的mobile 表中數據,并把查詢到的數據返回到Web頁面。

3.1 加權輪詢算法

負載均衡器采用加權算法,根據服務器性能內存、CPU 等情況分配相應的權重,Web01 設置權重值為1,Web02 設置權重值為2。Nginx 負載均衡器當檢測到Web服務器連接異常時,在timeout周期內,Nginx將請求發送給可用的服務節點,在Nginx 負載均衡器修改配置代碼:

3.2 監控系統部署

1) node_exporter的安裝

Web01、Web02 和Nginx 負載均衡器中安裝Node_exporter 組件工具,并啟動node_exporter 收集服務器信息。

2) 在監控服務器中安裝prometheus server,在Prometheus.yml 文件中,增加需要抓取的節點的信息,啟動prometheus server 抓取Web01、Web02 和Nginx 負載均衡器運行信息。

修改Prometheus.yml,增加以下代碼

3) 安裝和啟動Grafana 服務,通過http://192.168.40.13:3000 登錄Grafana,加載數據源,加載Dashboard監控模塊,查看Web01、Web02和nginx負載均衡器運行信息。

3.3 實驗測試

客戶端使用Apache 的Apache Bench 工具向服務器端發送高并發連接訪問請求,發送請求總是分別4000、4500、5000、5500、6000、6500、7000、7500、8000個高并發請求,同時并發數500 個。對單一服務器Web01 提供請求響應,當在并發總數是5000 個時,開始出現丟包現象,丟包數為2個;而云計算分布式系統在4 000~8 000 個的高并發訪問時,并無丟包情況。如圖3 所示,單獨服務器Web01 響應高并發請求時,隨著請求總數的增加,CPU 的使用率越來越高,增長較快。而云計算分布式系統中Web01 和Web02 同時響應高并發請求,其CPU使用率較低,且增長較緩慢,實現了負載均衡。

圖3 高并發請求響應時CPU使用率

并發請求連接總數分別為2100、2400、2700、3000、3300、3600、3900、4200、4500高并發訪問,并發連接500 個,模擬500 用戶在線同時HTTP 訪問,統計Web01和Web02 的TCP連接數。實驗結果如圖4和圖5所示,經過Nginx 進行負載均衡后, Web01和Web02的TCP連接比例基本是1:2,實驗表明根據后端服務器的性能實現加權輪詢算法分配策略的負載均衡。

表2 9組高并發數請求Web01和Web02的TCP_tw連接數

4 總結

本文根據云計算分布式系統在高并發訪問請求中存在的負載不均衡、響應速度下降的問題,對負載均衡算法進行研究,設計云計算分布式系統架構,采用Nginx 負載均衡器架構云計算分布式系統和采用Prometheus和Grafana建立監控系統,監控后端服務器運行情況和超載預警。最后,對云計算分布式系統進行高并發仿真測試,實驗表明該云計算分布式系統比單一的服務器系統有較高的可靠性,較低的系統資源使用率,實現基于加權輪詢算法的負載均衡。

猜你喜歡
分配服務系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
應答器THR和TFFR分配及SIL等級探討
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
遺產的分配
一種分配十分不均的財富
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
績效考核分配的實踐與思考
主站蜘蛛池模板: 亚洲婷婷丁香| 精品福利网| 少妇高潮惨叫久久久久久| 99国产精品一区二区| 婷婷成人综合| 国产在线91在线电影| 欧美亚洲一二三区| 国产精品私拍在线爆乳| 日a本亚洲中文在线观看| 国产精品精品视频| 福利国产微拍广场一区视频在线| 国产特一级毛片| 国产女人18毛片水真多1| 精品自窥自偷在线看| 欧美在线视频不卡| 亚洲高清日韩heyzo| 91精品啪在线观看国产60岁 | 99草精品视频| 人人91人人澡人人妻人人爽 | 91福利免费视频| 国产黑丝一区| 青青青视频免费一区二区| 狠狠干欧美| 欧美色图久久| 欧美日韩在线亚洲国产人| 国产靠逼视频| 亚洲最大福利视频网| 亚洲水蜜桃久久综合网站| 毛片a级毛片免费观看免下载| 国产永久在线观看| 日本亚洲成高清一区二区三区| 99在线小视频| 久久a级片| 久一在线视频| 欧美日韩在线第一页| 沈阳少妇高潮在线| 99在线观看视频免费| 精品国产www| 国产一级无码不卡视频| 色久综合在线| 在线毛片免费| 538国产视频| 五月天天天色| 亚洲AⅤ综合在线欧美一区| 本亚洲精品网站| 欧美国产在线看| 欧美成人精品在线| 国产在线啪| 亚洲国产精品VA在线看黑人| 欧美亚洲日韩中文| 在线观看免费黄色网址| 国产99精品视频| 亚洲一道AV无码午夜福利| 国产福利微拍精品一区二区| 在线精品欧美日韩| 亚洲精品国产综合99| 在线看片中文字幕| 91小视频在线观看免费版高清| 奇米影视狠狠精品7777| 久久久久人妻精品一区三寸蜜桃| 999国内精品视频免费| 中文纯内无码H| 97av视频在线观看| 婷婷综合在线观看丁香| 国产网站一区二区三区| 天堂网亚洲系列亚洲系列| 四虎永久在线精品影院| 久久夜色精品国产嚕嚕亚洲av| 四虎永久在线| 中文一区二区视频| 亚洲欧美日韩中文字幕在线| 女人18毛片水真多国产| 黄色在线网| 日本人妻一区二区三区不卡影院 | 精品無碼一區在線觀看 | 99久久无色码中文字幕| 免费观看三级毛片| 国产精品播放| 亚洲三级色| 免费人成视频在线观看网站| 人妖无码第一页| 一本大道香蕉中文日本不卡高清二区|