摘要:常用的狀態(tài)有,表示當(dāng)前的暫時不參與負(fù)載均衡。當(dāng)負(fù)載調(diào)度算法為時,后端服務(wù)器在負(fù)載均衡調(diào)度中的狀態(tài)不能是和。
反向代理概念MonkeyEye(猿眼售票系統(tǒng))項(xiàng)目地址:
https://github.com/SYSUMonkeyEye/MonkeyEye-FE
反向代理作用 1. 保護(hù)和隱藏Web服務(wù)器反向代理(Reverse Proxy)方式是指以代理服務(wù)器來接受客戶端連接請求,然后將請求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,并將從服務(wù)器上得到的結(jié)果返回給客戶端,此時代理服務(wù)器對外就表現(xiàn)為一個服務(wù)器。
用戶始終認(rèn)為它訪問的是Web服務(wù)器而不是代理服務(wù)器,但實(shí)際上是反向代理服務(wù)器接受用戶的請求,從Web服務(wù)器中取得用戶的需求資源,然后發(fā)送給用戶。未經(jīng)授權(quán)的用戶無法訪問到真正的Web服務(wù)器,因?yàn)榉阑饓χ辉试S代理服務(wù)器有權(quán)進(jìn)行訪問。
2. 負(fù)載均衡由上圖可以推出,反向代理服務(wù)器管理了一組服務(wù)器,可以根據(jù)對應(yīng)的負(fù)載均衡算法將不同的請求轉(zhuǎn)發(fā)到不同的服務(wù)器上,服務(wù)器處理完成的響應(yīng)也通過代理服務(wù)器返回給用戶。
與此同時,反相代理服務(wù)器還可以具有存儲靜態(tài)數(shù)據(jù)用于緩存的功能,從而加速處理用戶請求,提高服務(wù)器處理性能,其工作原理大概如下圖所示:
反向代理服務(wù)器轉(zhuǎn)發(fā)請求處于應(yīng)用層協(xié)議上,因此,也稱之為應(yīng)用層負(fù)載均衡。該負(fù)載均衡方案與反向代理服務(wù)器功能集成到了一起,部署相對簡單。但是,反向代理服務(wù)器會處理所有的請求和響應(yīng),其性能可能會成為整個集群的瓶頸。
負(fù)載均衡配置 upstreamupstream是Nginx的HTTP Upstream模塊,這個模塊通過一個簡單的調(diào)度算法來實(shí)現(xiàn)客戶端IP地址到后端服務(wù)器的負(fù)載均衡。在Nginx的配置文件中,可以通過upstream指令指定一個負(fù)載均衡器的名稱。這個名稱可以任意指定,在后面需要用到的地方直接調(diào)用即可。
調(diào)度算法Nginx的負(fù)載均衡模塊目前支持5種調(diào)度算法,下面進(jìn)行分別介紹,其中后兩項(xiàng)屬于第三方調(diào)度算法。
輪詢(默認(rèn))。每個請求按時間順序逐一分配到不同的后端服務(wù)器,如果后端某臺服務(wù)器宕機(jī),故障系統(tǒng)被自動剔除,使用戶訪問不受影響。
upstream backserver { server 192.168.0.14; server 192.168.0.15; }
指定權(quán)重。指定輪詢幾率,weight和訪問比率成正比,用于后端服務(wù)器性能不均的情況。
upstream backserver { server 192.168.0.14 weight=1; server 192.168.0.15 weight=2; }
ip_hash。每個請求按訪問IP的hash結(jié)果分配,這樣來自同一個IP的訪客固定訪問一個后端服務(wù)器,有效解決了動態(tài)網(wǎng)頁存在的session共享問題。
upstream backserver { ip_hash; server 192.168.0.14:88; server 192.168.0.15:80; }
fair(第三方)。這是比上面兩個更加智能的負(fù)載均衡算法。這種算法可以依據(jù)頁面大小和加載時間長短智能地進(jìn)行負(fù)載均衡,也就是根據(jù)后端服務(wù)器的響應(yīng)時間來分配請求,響應(yīng)時間短的優(yōu)先分配。Nginx本身是不支持fair的,如果需要使用這種調(diào)度算法,必須下載Nginx的upstream_fair模塊。
upstream backserver { server server1; server server2; fair; }
url_hash(第三方)。此方法按訪問url的hash結(jié)果來分配請求,使每個url重定向到同一個后端服務(wù)器,可以進(jìn)一步提高后端緩存服務(wù)器的效率。Nginx本身是不支持url_hash的,如果需要使用這種調(diào)度算法,必須安裝Nginx的hash軟件包。
upstream backserver { server squid1:3128; server squid2:3128; hash $request_uri; hash_method crc32; }upstream支持的狀態(tài)參數(shù)
在HTTP Upstream模塊中,可以通過server指令指定后端服務(wù)器的IP地址和端口,同時還可以設(shè)定每個后端服務(wù)器在負(fù)載均衡調(diào)度中的狀態(tài)。常用的狀態(tài)有:
down,表示當(dāng)前的server暫時不參與負(fù)載均衡。
backup,預(yù)留的備份機(jī)器。當(dāng)其他所有的非backup機(jī)器出現(xiàn)故障或者忙的時候,才會請求backup機(jī)器,因此這臺機(jī)器的壓力最輕。
max_fails,允許請求失敗的次數(shù),默認(rèn)為1。當(dāng)超過最大次數(shù)時,返回proxy_next_upstream模塊定義的錯誤。
fail_timeout,在經(jīng)歷了max_fails次失敗后,暫停服務(wù)的時間。max_fails可以和fail_timeout一起使用。
當(dāng)負(fù)載調(diào)度算法為ip_hash時,后端服務(wù)器在負(fù)載均衡調(diào)度中的狀態(tài)不能是weight和backup。
upstream backend { server 127.0.0.1:6060; server 127.0.0.1:9090 down; server 127.0.0.1:7070 backup; }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/39554.html
摘要:猿眼售票系統(tǒng)項(xiàng)目地址以下是我們項(xiàng)目的部署圖可以從上圖看到,其中后臺有臺靜態(tài)文件服務(wù)器,臺服務(wù)器,服務(wù)器儲存電影和用戶相關(guān)信息和服務(wù)器儲存和短信驗(yàn)證碼。本人負(fù)責(zé)服務(wù)器的反向代理配置,將請求分發(fā)至對應(yīng)的服務(wù)器,并實(shí)現(xiàn)多臺服務(wù)器的負(fù)載均衡。 MonkeyEye(猿眼售票系統(tǒng))項(xiàng)目地址:https://github.com/SYSUMonkeyEye/MonkeyEye-FE 以下是我們項(xiàng)目的...
摘要:注意注解能注冊到服務(wù)上,是因?yàn)樵撟⒔獍丝蛻舳说淖⒔?,該是一個復(fù)合注解。地址可以查看該微服務(wù)網(wǎng)關(guān)代理了多少微服務(wù)的。 SpringCloud(第 018 篇)Zuul 服務(wù) API 網(wǎng)關(guān)微服務(wù)之代理與反向代理 - 一、大致介紹 1、API 服務(wù)網(wǎng)關(guān)顧名思義就是統(tǒng)一入口,類似 nginx、F5 等功能一樣,統(tǒng)一代理控制請求入口,弱化各個微服務(wù)被客戶端記憶功能; 2、本章節(jié)主要講解了使用...
寫在最前 這是根據(jù) imooc 上 Scott 老師的課程整理的,主要是方便自己查找,因?yàn)檎娴挠洸蛔?.. 附上鏈接:Node.js項(xiàng)目線上服務(wù)器部署與發(fā)布 靜態(tài)網(wǎng)站,需要數(shù)據(jù)庫的電影網(wǎng)站、公眾號,小程序,app 五種項(xiàng)目的部署。這里只寫最簡單的靜態(tài)網(wǎng)站的部署 部署思路 1、完成項(xiàng)目2、購買域名,備案,解析一些二級域名出來備用3、購買服務(wù)器 4、ssh 遠(yuǎn)程登錄服務(wù)器 并進(jìn)行一些安全配置5、服務(wù)...
寫在最前 這是根據(jù) imooc 上 Scott 老師的課程整理的,主要是方便自己查找,因?yàn)檎娴挠洸蛔?.. 附上鏈接:Node.js項(xiàng)目線上服務(wù)器部署與發(fā)布 靜態(tài)網(wǎng)站,需要數(shù)據(jù)庫的電影網(wǎng)站、公眾號,小程序,app 五種項(xiàng)目的部署。這里只寫最簡單的靜態(tài)網(wǎng)站的部署 部署思路 1、完成項(xiàng)目2、購買域名,備案,解析一些二級域名出來備用3、購買服務(wù)器 4、ssh 遠(yuǎn)程登錄服務(wù)器 并進(jìn)行一些安全配置5、服務(wù)...
閱讀 2116·2023-04-25 19:03
閱讀 1269·2021-10-14 09:42
閱讀 3455·2021-09-22 15:16
閱讀 1029·2021-09-10 10:51
閱讀 1659·2021-09-06 15:00
閱讀 2434·2019-08-30 15:55
閱讀 516·2019-08-29 16:22
閱讀 916·2019-08-26 13:49