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

資訊專欄INFORMATION COLUMN

【nginx】配置Nginx實(shí)現(xiàn)負(fù)載均衡

Eric / 2038人閱讀

摘要:三使用的高可用除了要實(shí)現(xiàn)網(wǎng)站的高可用,也就是提供多臺(tái)服務(wù)器用于發(fā)布相同的服務(wù),添加負(fù)載均衡服務(wù)器分發(fā)請(qǐng)求以保證在高并發(fā)下各臺(tái)服務(wù)器能相對(duì)飽和的處理請(qǐng)求。

在關(guān)于高并發(fā)負(fù)載均衡一文中已經(jīng)提到,企業(yè)在解決高并發(fā)問題時(shí),一般有兩個(gè)方向的處理策略,軟件、硬件,硬件上添加負(fù)載均衡器分發(fā)大量請(qǐng)求,軟件上可在高并發(fā)瓶頸處:數(shù)據(jù)庫(kù)+web服務(wù)器兩處添加解決方案,其中web服務(wù)器前面一層最常用的的添加負(fù)載方案就是使用nginx實(shí)現(xiàn)負(fù)載均衡。

一、負(fù)載均衡的作用

1、轉(zhuǎn)發(fā)功能

按照一定的算法【權(quán)重、輪詢】,將客戶端請(qǐng)求轉(zhuǎn)發(fā)到不同應(yīng)用服務(wù)器上,減輕單個(gè)服務(wù)器壓力,提高系統(tǒng)并發(fā)量。

2、故障移除

通過心跳檢測(cè)的方式,判斷應(yīng)用服務(wù)器當(dāng)前是否可以正常工作,如果服務(wù)器期宕掉,自動(dòng)將請(qǐng)求發(fā)送到其他應(yīng)用服務(wù)器。

3、恢復(fù)添加

如檢測(cè)到發(fā)生故障的應(yīng)用服務(wù)器恢復(fù)工作,自動(dòng)將其添加到處理用戶請(qǐng)求隊(duì)伍中。

二、Nginx實(shí)現(xiàn)負(fù)載均衡
同樣使用兩個(gè)tomcat模擬兩臺(tái)應(yīng)用服務(wù)器,端口號(hào)分別為8080 和8081

1、Nginx的負(fù)載分發(fā)策略

  Nginx 的 upstream目前支持的分配算法: 

1)、輪詢 ——1:1 輪流處理請(qǐng)求(默認(rèn))

  每個(gè)請(qǐng)求按時(shí)間順序逐一分配到不同的應(yīng)用服務(wù)器,如果應(yīng)用服務(wù)器down掉,自動(dòng)剔除,剩下的繼續(xù)輪詢。 

2)、權(quán)重 ——you can you up

  通過配置權(quán)重,指定輪詢幾率,權(quán)重和訪問比率成正比,用于應(yīng)用服務(wù)器性能不均的情況。 

3)、ip_哈希算法

  每個(gè)請(qǐng)求按訪問ip的hash結(jié)果分配,這樣每個(gè)訪客固定訪問一個(gè)應(yīng)用服務(wù)器,可以解決session共享的問題。 

2、配置Nginx的負(fù)載均衡與分發(fā)策略

  通過在upstream參數(shù)中添加的應(yīng)用服務(wù)器IP后添加指定參數(shù)即可實(shí)現(xiàn),如:


復(fù)制代碼
upstream tomcatserver1 {

server 192.168.72.49:8080 weight=3;  
server 192.168.72.49:8081;  
}   

server {

    listen       80;  
    server_name  8080.max.com;  
    #charset koi8-r;  
    #access_log  logs/host.access.log  main;  
    location / {  
        proxy_pass   http://tomcatserver1;  
        index  index.html index.htm;  
    }  
 } 

復(fù)制代碼

  通過以上配置,便可以實(shí)現(xiàn),在訪問8080.max.com這個(gè)網(wǎng)站時(shí),由于配置了proxy_pass地址,所有請(qǐng)求都會(huì)先通過nginx反向代理服務(wù)器,在服務(wù)器將請(qǐng)求轉(zhuǎn)發(fā)給目的主機(jī)時(shí),讀取upstream為 tomcatsever1的地址,讀取分發(fā)策略,配置tomcat1權(quán)重為3,所以nginx會(huì)將大部分請(qǐng)求發(fā)送給49服務(wù)器上的tomcat1,也就是8080端口;較少部分給tomcat2來實(shí)現(xiàn)有條件的負(fù)載均衡,當(dāng)然這個(gè)條件就是服務(wù)器1、2的硬件指數(shù)處理請(qǐng)求能力。 

3、nginx其他配置

復(fù)制代碼
upstream myServer {

server 192.168.72.49:9090 down;   
server 192.168.72.49:8080 weight=2;   
server 192.168.72.49:6060;   
server 192.168.72.49:7070 backup;   

}
復(fù)制代碼

1)down

表示單前的server暫時(shí)不參與負(fù)載

2)Weight

默認(rèn)為1.weight越大,負(fù)載的權(quán)重就越大。

3)max_fails

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

4)fail_timeout

max_fails 次失敗后,暫停的時(shí)間。

5)Backup

其它所有的非backup機(jī)器down或者忙的時(shí)候,請(qǐng)求backup機(jī)器。所以這臺(tái)機(jī)器壓力會(huì)最輕。

三、使用Nginx的高可用

  除了要實(shí)現(xiàn)網(wǎng)站的高可用,也就是提供n多臺(tái)服務(wù)器用于發(fā)布相同的服務(wù),添加負(fù)載均衡服務(wù)器分發(fā)請(qǐng)求以保證在高并發(fā)下各臺(tái)服務(wù)器能相對(duì)飽和的處理請(qǐng)求。同樣,負(fù)載均衡服務(wù)器也需要高可用,以防如果負(fù)載均衡服務(wù)器掛掉了,后面的應(yīng)用服務(wù)器也紊亂無法工作。

 實(shí)現(xiàn)高可用的方案:添加冗余。添加n臺(tái)nginx服務(wù)器以避免發(fā)生上述單點(diǎn)故障。具體方案詳見下文:keepalive+nginx實(shí)現(xiàn)負(fù)載均衡高可用

四、總結(jié)

總結(jié)一點(diǎn),負(fù)載均衡不論是各種軟件或硬件上的解決方案,主要還是將大量的并發(fā)請(qǐng)求按照一定的規(guī)律分發(fā)給不同的服務(wù)器處理,從而減少某臺(tái)服務(wù)器的瞬時(shí)壓力,提高網(wǎng)站的抗并發(fā)能力。nginx在負(fù)載均衡的應(yīng)用之所以廣泛,筆者認(rèn)為這歸功于它的靈活配置,一個(gè)nginx.conf文件解決大部分問題,不論是nignx創(chuàng)建虛擬服務(wù)器、nginx的反向代理服務(wù)器,還是本文介紹的nginx的負(fù)載均衡,幾乎都在這個(gè)配置文件中進(jìn)行。服務(wù)器上只負(fù)責(zé)把nginx搭好,跑起來即可。而且它本身輕量級(jí),不需要占用服務(wù)器太多資源就可以達(dá)到較好的效果,膩害。

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

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

相關(guān)文章

  • Kubernetes上的負(fù)載均衡詳解

    摘要:部署只是一種規(guī)則,控制器組件會(huì)將這一規(guī)則應(yīng)用于實(shí)際負(fù)載均衡器中。原因是功能僅允許將端口用于路由,負(fù)載均衡器和則可作為全局啟動(dòng)。負(fù)載均衡的限制提供了功能豐富的負(fù)載均衡器支持詳細(xì)介紹在此。截至目前,我們暫時(shí)無法使用工具將負(fù)載均衡器配置從轉(zhuǎn)換為。 如果您的應(yīng)用程序是面向大量用戶、會(huì)吸引大量流量,那么一個(gè)不變的目標(biāo)一定是在高效滿足用戶需求的同時(shí)、不讓用戶感知到任何類似于服務(wù)器繁忙!的情況。這一...

    CoderBear 評(píng)論0 收藏0
  • 使用 NGINX 做 HTTP 負(fù)載均衡

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

    sarva 評(píng)論0 收藏0
  • Nginx 反向代理 負(fù)載均衡 虛擬主機(jī)配置

    摘要:反向代理負(fù)載均衡虛擬主機(jī)配置通過本章你將學(xué)會(huì)利用配置多臺(tái)虛擬主機(jī),清楚代理服務(wù)器的作用,區(qū)分正向代理和反向代理的區(qū)別,搭建使用反向搭理和負(fù)載均衡,了解常用配置的說明。最重要的是反向代理,負(fù)載均衡。 Nginx 反向代理 負(fù)載均衡 虛擬主機(jī)配置 通過本章你將學(xué)會(huì)利用Nginx配置多臺(tái)虛擬主機(jī),清楚代理服務(wù)器的作用,區(qū)分正向代理和反向代理的區(qū)別,搭建使用Nginx反向搭理和負(fù)載均衡,了解N...

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

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

0條評(píng)論

閱讀需要支付1元查看
<