地域
glsb:全域性負載均衡,global server load balance
slb:一般用到,伺服器負載均衡(server load balancing)
網路模型
負載均衡又分為四層負載均衡(傳輸層,tcp/ip)和七層負載均衡(應用層)
nginx就是典型的七層負載均衡伺服器。
nginx的負載均衡主要用到的是 proxy_pass:
預設是輪訓方式。一旦乙個節點出了問題,就不會顯示該節點
upstream舉例:
upstream imooc {
server 116.62.103.228:8001 down;
server 116.62.103.228:8002 backup;
server 116.62.103.228:8003 max_fails=1 fail_timeout=10s;
後端伺服器在負載均衡排程中的狀態:
down 當前的server暫時不參與負載均衡
backup 預留的備份伺服器
max_fails 允許請求失敗的次數
fail_timeout: 經過max_fails失敗後,服務暫停的時間
max_conns: 限制最大的接受的連線數
輪訓 按時間順序逐一分配不同的後端伺服器
加權輪訓 weight值越大,分配到的訪問機率越高
ip_hash 每個請求按訪問ip的hash結果分配,這樣來自同乙個ip固定訪問乙個後端伺服器
least_conn 最少鏈結數,哪個機器的連線數少就分發。
url_hash 按照訪問的url的hash結果來分配請求,使每個url定向到同乙個後端伺服器
hash關鍵數值 hash自定義的key
加權輪訓示例:
upstream imooc {
server 116.62.103.228:8001;
server 116.62.103.228:8002 weight=5;
server 116.62.103.228:8003;
ip_hash示例,但是它有乙個缺陷,如果前端走**,它的hash就不通了:
upstream imooc {
ip_hash;
server 116.62.103.228:8001;
server 116.62.103.228:8002;
server 116.62.103.228:8003;
url_hash方式:
upstream imooc {
hash $request_uri;
server 116.62.103.228:8001;
server 116.62.103.228:8002;
server 116.62.103.228:8003;
負載均衡的應用場景
負載均衡適用於高訪問量的業務,提高應用程式的可用性和可靠性。應用於高訪問量的業務 如果您的應用訪問量很高,您可以通過配置監聽規則將流量分發到不同的ecs例項上。此外,您可以使用會話保持功能將同一客戶端的請求 到同一台後端ecs,提高訪問效率。擴充套件應用程式 消除單點故障 您可以在負載均衡例項下新增...
負載均衡實現方案與應用場景
負載均衡實現方案與應用場景 1.dns 伺服器解析客戶端請求的網域名稱,根據每個地方的網域名稱,然後去請求不同的伺服器應用。可能不及時,有快取。2.軟體實現 如nginx 均衡實現 1.輪詢 順序輪詢,隨機輪詢,權重配比輪詢,相當於輪詢的找伺服器。2.hash計算 根據計算某個值,值一樣了 ngin...
網路負載均衡適用場景
1.1 nlb的使用場景 1.1.1 web站點的負載平衡 某學院的web站點為了實現負載平衡,避免單點故障,考慮使用映象站點實現冗餘和負載平衡,這幾個映象站點放在dmz區,使用的資料庫放在企業的內網中。通過使用nlb技術這幾個web伺服器使用公共的位址22.34.3.100訪問dmz中的web伺服...