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久久精品无码专区免费| 久久精品国产999大香线焦| 日韩欧美国产中文| 在线观看免费黄色网址| 国产成人精品2021欧美日韩| 福利在线免费视频| av大片在线无码免费| 无码免费试看| 国产成人无码综合亚洲日韩不卡| 免费又爽又刺激高潮网址| 色婷婷亚洲综合五月| 亚洲成人在线免费| 2021国产在线视频| 国产成人综合网在线观看| 国产H片无码不卡在线视频| 国产女人18水真多毛片18精品| 欧美激情首页| 伊人久久婷婷| 亚洲AV无码一区二区三区牲色| 在线观看国产精品第一区免费| 亚洲视频影院| 亚洲第一区欧美国产综合 | 久久久久久久97| 午夜国产在线观看| 国产在线精品人成导航| 91啦中文字幕| 亚洲男人天堂久久| 亚洲AⅤ永久无码精品毛片| 国产精品久久精品| 免费观看精品视频999| 国产精品林美惠子在线观看| 免费人成又黄又爽的视频网站| 国产在线八区| 97视频在线观看免费视频| 欧美国产综合视频| 国产精品页| 亚洲综合色婷婷| 69av在线| 91最新精品视频发布页| 日韩无码视频专区| 夜夜高潮夜夜爽国产伦精品| 国产主播一区二区三区| 日本免费新一区视频| 国产电话自拍伊人| 午夜老司机永久免费看片| 成人字幕网视频在线观看| 亚洲丝袜第一页| 高清久久精品亚洲日韩Av| 欧美国产综合色视频| 青青草原国产av福利网站| 久久影院一区二区h| 少妇精品久久久一区二区三区| 免费毛片视频| 福利视频一区| 毛片免费视频| 亚洲国产欧美自拍| 毛片a级毛片免费观看免下载| 国产乱人伦精品一区二区| 丝袜国产一区| 九九久久精品免费观看| 夜精品a一区二区三区| 国产女主播一区| 99在线观看国产| 亚洲伊人久久精品影院| 伊在人亚洲香蕉精品播放| 天天色天天综合| 亚洲美女一级毛片| 国产高清无码第一十页在线观看| 思思热在线视频精品| 国产精品嫩草影院av| 丝袜久久剧情精品国产| 国产精品香蕉在线观看不卡| 亚洲视频黄| 国产簧片免费在线播放| 国产区在线观看视频| 久草性视频| 亚洲Aⅴ无码专区在线观看q| 97精品国产高清久久久久蜜芽| 国产情精品嫩草影院88av| 亚洲国产日韩一区|