成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

nginx負(fù)載均衡的5種策略

Acceml / 1686人閱讀

摘要:要理解負(fù)載均衡,必須先搞清楚正向代理和反向代理。負(fù)載均衡的幾種常用方式輪詢默認(rèn)每個(gè)請(qǐng)求按時(shí)間順序逐一分配到不同的后端服務(wù)器,如果后端服務(wù)器掉,能自動(dòng)剔除。指定輪詢幾率,和訪問(wèn)比率成正比,用于后端服務(wù)器性能不均的情況。

要理解負(fù)載均衡,必須先搞清楚正向代理和反向代理。

負(fù)載均衡的幾種常用方式

1、輪詢(默認(rèn))

每個(gè)請(qǐng)求按時(shí)間順序逐一分配到不同的后端服務(wù)器,如果后端服務(wù)器down掉,能自動(dòng)剔除。

upstream backserver {
    server 192.168.0.14;
    server 192.168.0.15;
}
2、weight

指定輪詢幾率,weight和訪問(wèn)比率成正比,用于后端服務(wù)器性能不均的
情況。

upstream backserver {
    server 192.168.0.14 weight=3;
    server 192.168.0.15 weight=7;
}

權(quán)重越高,在被訪問(wèn)的概率越大,如上例,分別是30%,70%。

3、ip_hash

上述方式存在一個(gè)問(wèn)題就是說(shuō),在負(fù)載均衡系統(tǒng)中,假如用戶在某臺(tái)服務(wù)器上登錄了,那么該用戶第二次請(qǐng)求的時(shí)候,因?yàn)槲覀兪秦?fù)載均衡系統(tǒng),每次請(qǐng)求都會(huì)重新定位到服務(wù)器集群中的某一個(gè),那么已經(jīng)登錄某一個(gè)服務(wù)器的用戶再重新定位到另一個(gè)服務(wù)器,其登錄信息將會(huì)丟失,這樣顯然是不妥的。
我們可以采用ip_hash指令解決這個(gè)問(wèn)題,如果客戶已經(jīng)訪問(wèn)了某個(gè)服務(wù)器,當(dāng)用戶再次訪問(wèn)時(shí),會(huì)將該請(qǐng)求通過(guò)哈希算法,自動(dòng)定位到該服務(wù)器。
每個(gè)請(qǐng)求按訪問(wèn)ip的hash結(jié)果分配,這樣每個(gè)訪客固定訪問(wèn)一個(gè)后端服務(wù)器,可以解決session的問(wèn)題。

upstream backserver {
    ip_hash;
    server 192.168.0.14:88;
    server 192.168.0.15:80;
}
4、fair(第三方)

按后端服務(wù)器的響應(yīng)時(shí)間來(lái)分配請(qǐng)求,響應(yīng)時(shí)間短的優(yōu)先分配。

upstream backserver {
    server server1;
    server server2;
    fair;
}
5、url_hash(第三方)

按訪問(wèn)url的hash結(jié)果來(lái)分配請(qǐng)求,使每個(gè)url定向到同一個(gè)(對(duì)應(yīng)的)后端服務(wù)器,后端服務(wù)器為緩存時(shí)比較有效。

upstream backserver {
    server squid1:3128;
    server squid2:3128;
    hash $request_uri;
    hash_method crc32;
}

在需要使用負(fù)載均衡的server中增加

proxy_pass http://backserver/; 
upstream backserver{ 
    ip_hash; 
    server 127.0.0.1:9090 down; (down 表示單前的server暫時(shí)不參與負(fù)載) 
    server 127.0.0.1:8080 weight=2; (weight 默認(rèn)為1.weight越大,負(fù)載的權(quán)重就越大) 
    server 127.0.0.1:6060; 
    server 127.0.0.1:7070 backup; (其它所有的非backup機(jī)器down或者忙的時(shí)候,請(qǐng)求backup機(jī)器) 
} 

max_fails :允許請(qǐng)求失敗的次數(shù)默認(rèn)為1.當(dāng)超過(guò)最大次數(shù)時(shí),返回proxy_next_upstream 模塊定義的錯(cuò)誤

fail_timeout:max_fails次失敗后,暫停的時(shí)間
配置實(shí)例:

#user  nobody;

worker_processes  4;
events {
# 最大并發(fā)數(shù)
worker_connections  1024;
}
http{
    # 待選服務(wù)器列表
    upstream myproject{
        # ip_hash指令,將同一用戶引入同一服務(wù)器。
        ip_hash;
        server 125.219.42.4 fail_timeout=60s;
        server 172.31.2.183;
    }

    server{
        # 監(jiān)聽(tīng)端口
        listen 80;
        # 根目錄下
        location / {
        # 選擇哪個(gè)服務(wù)器列表
            proxy_pass http://myproject;
        }

    }
}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/39903.html

相關(guān)文章

  • 使用 NGINX 做 HTTP 負(fù)載均衡

    摘要:另一種負(fù)載均衡策略是最少連接。當(dāng)使用最少連接負(fù)載均衡策略時(shí),會(huì)把新請(qǐng)求分發(fā)給不太忙的服務(wù)器,從而避免分發(fā)過(guò)多的請(qǐng)求給忙碌的服務(wù)器造成過(guò)載。另外,還有很多的命令以及參數(shù)可以控制的負(fù)載均衡,例如。使用做負(fù)載均衡 Introduction 負(fù)載均衡一般被用來(lái)優(yōu)化資源利用率、最大化吞吐量、降低延遲和容錯(cuò)配置。 Nginx 可以作為一種十分有效的 HTTP 負(fù)載均衡工具來(lái)使用,通過(guò) nginx ...

    sarva 評(píng)論0 收藏0
  • 分布式系統(tǒng)負(fù)載均衡 | 架構(gòu)干貨

    摘要:是的默認(rèn)負(fù)載均衡策略。一致性哈希負(fù)載均衡。所以負(fù)載均衡是分布式系統(tǒng)架構(gòu)設(shè)計(jì)中必須考慮的因素之一。考慮主要是如何讓下游接收到的請(qǐng)求是均勻分布的第層客戶端層反向代理層的負(fù)載均衡。通過(guò)輪詢第層反向代理層層的負(fù)載均衡。 一、 什么是負(fù)載均衡? 什么是負(fù)載均衡? 記得第一次接觸 Nginx 是在實(shí)驗(yàn)室,那時(shí)候在服務(wù)器部署網(wǎng)站需要用 Nginx 。Nginx 是一個(gè)服務(wù)組件,用來(lái)反向代理、負(fù)載平衡...

    twohappy 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<