校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Nginx+SpringBoot實現(xiàn)負載均衡的示例

Nginx+SpringBoot實現(xiàn)負載均衡的示例

熱門標簽:400 電話 申請費用 山東電信外呼系統(tǒng)靠譜嗎 鸚鵡螺號航海地圖標注時間 云南云電銷機器人招商 信貸電銷機器人系統(tǒng) 江蘇自動外呼系統(tǒng)一般多少錢 長沙回撥外呼系統(tǒng) 比較穩(wěn)定的外呼系統(tǒng) ai電話機器人營銷

負載均衡介紹

在介紹Nginx的負載均衡實現(xiàn)之前,先簡單的說下負載均衡的分類,主要分為硬件負載均衡和軟件負載均衡,硬件負載均衡是使用專門的軟件和硬件相結(jié)合的設(shè)備,設(shè)備商會提供完整成熟的解決方案,比如F5,在數(shù)據(jù)的穩(wěn)定性以及安全性來說非常可靠,但是相比軟件而言造價會更加昂貴;軟件的負載均衡以Nginx這類軟件為主,實現(xiàn)的一種消息隊列分發(fā)機制。

簡單來說所謂的負載均衡就是把很多請求進行分流,將他們分配到不同的服務(wù)器去處理。比如我有3個服務(wù)器,分別為A、B、C,然后使用Nginx進行負載均衡,使用輪詢策略,此時如果收到了9個請求,那么會均勻的將這9個請求分發(fā)給A、B、Cf服務(wù)器,每一個服務(wù)器處理3個請求,這樣的話我們可以利用多臺機器集群的特性減少單個服務(wù)器的壓力。

Nginx實現(xiàn)負載均衡的示例圖:

負載均衡策略

NGINX開源支持四種負載平衡方法,而NGINX Plus又增加了兩種方法。

1.Round Robin:

對所有的請求進行輪詢發(fā)送請求,默認的分配方式。

nginx.conf 配置示例:

upstream xuwujing {
  server www.panchengming.com;
  server www.panchengming2.com;
}

注:上面的域名也可以用IP替代。

2.Least Connections:

以最少的活動連接數(shù)將請求發(fā)送到服務(wù)器,同樣要考慮服務(wù)器權(quán)重。

nginx.conf 配置示例:

upstream xuwujing {
  least_conn;
  server www.panchengming.com;
  server www.panchengming2.com;
}

3.IP Hash :

發(fā)送請求的服務(wù)器由客戶機IP地址決定。在這種情況下,使用IPv4地址的前三個字節(jié)或整個IPv6地址來計算散列值。該方法保證來自相同地址的請求到達相同的服務(wù)器,除非該服務(wù)器不可用。

upstream xuwujing {
   ip_hash;
   server www.panchengming.com;
   server www.panchengming2.com;
}

4.Generic Hash:

請求發(fā)送到的服務(wù)器由用戶定義的鍵決定,該鍵可以是文本字符串、變量或組合。

	upstream xuwujing {
	  hash $request_uri consistent;
	  server www.panchengming.com;
    server www.panchengming2.com;
	}

5.Least Time (NGINX Plus only)

對于每個請求,NGINX Plus選擇具有最低平均延遲和最低活動連接數(shù)的服務(wù)器,其中最低平均延遲是根據(jù)包含least_time指令的下列參數(shù)計算的:

  • header : 從服務(wù)器接收第一個字節(jié)的時間。
  • last_byte: 從服務(wù)器接收完整響應(yīng)的時間。
  • last_byte inflight:從服務(wù)器接收完整響應(yīng)的時間。
upstream xuwujing {
least_time header;
server www.panchengming.com;
server www.panchengming2.com;
}

6.Random:

每個請求將被傳遞到隨機選擇的服務(wù)器。如果指定了兩個參數(shù),首先,NGINX根據(jù)服務(wù)器權(quán)重隨機選擇兩個服務(wù)器,然后使用指定的方法選擇其中一個。

  • least_conn :活動連接的最少數(shù)量
  • least_time=header (NGINX Plus):從服務(wù)器接收響應(yīng)標頭的最短平均時間 ($upstream_header_time)。
  • least_time=last_byte (NGINX Plus) :從服務(wù)器接收完整響應(yīng)的最短平均時間($upstream_response_time)。
upstream xuwujing {
random two least_time=last_byte;
server www.panchengming.com;
server www.panchengming2.com;
}

Nginx+SpringBoot實現(xiàn)負載均衡

環(huán)境準備

  • 依賴JDK1.8以上的版本;
  • 依賴Nginx環(huán)境;

這里的項目就用本人之前的一個springboot項目,SpringBoot的項目地址: https://github.com/xuwujing/springBoot-study/tree/master/springboot-thymeleaf

首先我們下載這個項目,輸入:mvn clean package 將項目進行打包為jar文件,然后將application.properties和此jar項目放在一個文件夾中,然后復(fù)制該文件夾(這里為了清晰所以進行復(fù)制,實際不復(fù)制更改端口重啟也行),修改復(fù)制文件夾application.properties的端口,比如改為8086。

Nginx 配置

我們找到nginx的配置文件nginx.conf,該配置在nginx/conf/nginx.conf目錄下,然后我們來修改該配置,新增如下配置:

upstream pancm{
  server 127.0.0.1:8085;
  server 127.0.0.1:8086;
}
  • upstream pancm:定義一個名稱,隨意就行;
  • server + ip:端口 or 域名;

如果不想使用Round Robin策略,也可以換成其他的。

然后在server添加/修改如下配置:

 server {
    listen    80;
    server_name 127.0.0.1;


    location / {
      root  html;
      proxy_pass http://pancm;
      proxy_connect_timeout 3s;
      proxy_read_timeout 5s;
      proxy_send_timeout 3s;	
      index index.html index.htm;
    }

    error_page  500 502 503 504 /50x.html;
    location = /50x.html {
      root  html;
    }
  }

配置說明:

  • server: 虛擬主機的名稱,一個http中可以配置多個server;
  • listen:Nginx默認的端口;
  • server_name:Nginx服務(wù)的地址,可以使用域名,多個用空格分隔。
  • proxy_pass:代理路徑,一般配置upstream后面的名稱用于實現(xiàn)負載均衡,可以直接配置ip進行跳轉(zhuǎn);

nginx.conf 完整的配置:

events {
  worker_connections 1024;
}

error_log nginx-error.log info;
http {
  include    mime.types;
  default_type application/octet-stream;
  sendfile    on;
  keepalive_timeout 65;

   upstream pancm{
    server 127.0.0.1:8085;
    server 127.0.0.1:8086;
  }
  
  server {
    listen    80;
    server_name 127.0.0.1;


    location / {
      root  html;
      proxy_pass http://pancm;
      proxy_connect_timeout 3s;
      proxy_read_timeout 5s;
      proxy_send_timeout 3s;	
      index index.html index.htm;
    }

    error_page  500 502 503 504 /50x.html;
    location = /50x.html {
      root  html;
    }
  }
}

負載均衡測試

在完成Nginx配置之后,我們啟動Nginx。
linux輸入/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf,如果已經(jīng)啟動可以使用/usr/local/nginx/sbin/nginx -s reload命令進行熱加載配置文件,Windows直接點擊Nginx目錄下的nginx.exe或者 cmd運行start nginx進行啟動,如果啟動了依舊可以使用nginx -s reload進行熱加載。

Nginx啟動完成之后,我們依次啟動剛剛下載的springboot和復(fù)制更改端口的項目,輸入:java -jar springboot-jsp-thymeleaf.jar啟動。

都啟動成功之后,我們在瀏覽器輸入服務(wù)的ip即可進行訪問。

示例圖:

注:這里我使用的是windows系統(tǒng)做測試,實際linux也是一樣的。

然后我們進行操作,并查看控制臺日志!

從上述示例圖中我們進行4次界面刷新請求,最終平均分配到兩個服務(wù)中去了,從上述的測試結(jié)果中我們實現(xiàn)了負載均衡。

這里我在說一下使用Nginx的注意事項,在進行學(xué)習(xí)和測試的時候,使用nginx默認的端口實現(xiàn)負載均衡一般沒有什么問題,但是當我們在項目中使用的時候,特別有登錄界面的并且端口不是80的時候,會出現(xiàn)登錄的界面無法跳轉(zhuǎn),進行調(diào)試的話會出現(xiàn) net::ERR_NAME_NOT_RESOLVED這樣的錯誤,出現(xiàn)這個原因的是因為nginx默認的端口是80,那么默認跳轉(zhuǎn)的也是這個,所以出現(xiàn)這種情況的時候,需要在location 下添加proxy_set_header Host $host:port 這個配置,port 和listen 的端口保持一致就可以了。

以上就是Nginx+SpringBoot實現(xiàn)負載均衡的示例的詳細內(nèi)容,更多關(guān)于Nginx實現(xiàn)負載均衡的資料請關(guān)注腳本之家其它相關(guān)文章!

標簽:衡陽 運城 亳州 齊齊哈爾 嘉興 烏海 拉薩 澳門

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Nginx+SpringBoot實現(xiàn)負載均衡的示例》,本文關(guān)鍵詞  Nginx+SpringBoot,實現(xiàn),負載,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Nginx+SpringBoot實現(xiàn)負載均衡的示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于Nginx+SpringBoot實現(xiàn)負載均衡的示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    天涯成人国产亚洲精品一区av| 欧美日韩视频在线观看一区二区三区| 日韩欧美色电影| 视频在线观看一区| 欧美精品乱人伦久久久久久| 亚洲成人在线免费| 日韩欧美国产三级电影视频| 人妖欧美一区二区| 久久久久久毛片| av一二三不卡影片| 亚洲三级免费电影| 激情久久五月天| 国产亚洲视频系列| 99精品桃花视频在线观看| 亚洲黄色性网站| 337p亚洲精品色噜噜噜| 国产丶欧美丶日本不卡视频| 亚洲狠狠丁香婷婷综合久久久| 91精品国产色综合久久不卡电影| 午夜精品123| 国产欧美视频一区二区三区| 色婷婷激情综合| 麻豆成人久久精品二区三区小说| 国产免费成人在线视频| 欧美日韩国产bt| 国产成人av一区二区三区在线观看| 综合中文字幕亚洲| 精品动漫一区二区三区在线观看| 91理论电影在线观看| 精品中文av资源站在线观看| 亚洲一区影音先锋| 亚洲视频狠狠干| 国产亚洲成av人在线观看导航| 欧美日韩国产经典色站一区二区三区| 美女视频黄频大全不卡视频在线播放| 国产精品视频第一区| 日韩欧美国产精品| 欧美一区二区三区视频免费| 久久久久99精品国产片| 日韩一区二区三区高清免费看看| 一区二区三区国产精品| 久久综合九色综合97婷婷女人| 福利一区二区在线观看| 日韩精品一二三四| 视频一区二区不卡| 丝袜亚洲精品中文字幕一区| 午夜精品福利一区二区三区av | 国产精品不卡在线| 国产亚洲欧洲一区高清在线观看| 欧美妇女性影城| 91精品国产综合久久福利| 欧美精品久久久久久久多人混战| 欧美私人免费视频| 91精品国产一区二区三区| 日韩欧美的一区| 日本一区二区三区四区| 亚洲综合男人的天堂| 日韩精品1区2区3区| 国产伦精一区二区三区| 色视频欧美一区二区三区| 欧美一区二区三区成人| 国产欧美日韩在线| 18成人在线视频| 久久精品国产99国产| 国产91丝袜在线观看| 在线观看视频一区| 日韩精品一区二区三区在线| 亚洲国产岛国毛片在线| 亚洲综合久久av| 丝袜国产日韩另类美女| 国产成人在线观看免费网站| 97超碰欧美中文字幕| 91香蕉视频污在线| 国产日韩影视精品| 亚洲一区二区在线视频| 免费视频一区二区| 不卡视频一二三| 欧美精品一区二区三| 亚洲精品国产一区二区精华液| 日本欧美加勒比视频| 成人美女视频在线观看18| 欧美高清精品3d| 亚洲一级片在线观看| 国产福利精品导航| 国产亚洲精品bt天堂精选| 韩国精品久久久| 欧美日本韩国一区二区三区视频| 亚洲色图制服丝袜| 国产成人h网站| 久久精品亚洲国产奇米99| 国产在线观看免费一区| 欧美xxxxx牲另类人与| 亚洲午夜日本在线观看| 91久久精品一区二区二区| 最新国产の精品合集bt伙计| 成+人+亚洲+综合天堂| 国产精品免费丝袜| 97久久超碰精品国产| 亚洲美女电影在线| 色视频一区二区| 亚洲二区在线观看| 欧美日韩黄视频| 日韩精品视频网| 精品国产免费一区二区三区四区| 精品午夜一区二区三区在线观看 | 久久精品国产99国产精品| 91精品国产aⅴ一区二区| 天天综合天天做天天综合| 欧美电影在线免费观看| 日韩高清不卡一区| 日本一区二区免费在线| 91在线无精精品入口| 亚洲一区二区三区在线播放| 欧美性猛交xxxx黑人交| 手机精品视频在线观看| 欧美tickle裸体挠脚心vk| 国产a区久久久| 亚洲黄色录像片| 久久伊99综合婷婷久久伊| 91丝袜高跟美女视频| 日韩高清电影一区| 1区2区3区精品视频| 欧美xfplay| 欧美伊人久久大香线蕉综合69 | 色综合天天综合狠狠| 免费人成黄页网站在线一区二区| 久久久亚洲综合| 欧美中文字幕不卡| thepron国产精品| 国产美女精品在线| 性感美女久久精品| 亚洲精品乱码久久久久久| 久久精品夜色噜噜亚洲a∨| 欧美手机在线视频| 成人黄色电影在线 | 亚洲自拍偷拍av| 国产精品高清亚洲| 欧美tickling挠脚心丨vk| 91精品国产91久久久久久一区二区 | 国产91精品在线观看| 美国毛片一区二区三区| 石原莉奈在线亚洲三区| 亚洲一区在线观看免费 | 国产亚洲欧美一级| xnxx国产精品| 久久综合九色综合97婷婷女人 | 国产日韩欧美精品综合| 精品99999| 国产欧美一区二区三区在线看蜜臀| 欧美tickling挠脚心丨vk| 国产午夜精品一区二区三区四区| 国产精品妹子av| 性做久久久久久免费观看欧美| 久久成人免费电影| 成人一区在线观看| 欧美色综合网站| 欧美精品一区二区三区蜜桃 | 欧美一级一级性生活免费录像| 69久久夜色精品国产69蝌蚪网| 国产亚洲精品福利| 一区二区三区波多野结衣在线观看| 亚洲一区二区三区国产| 午夜精彩视频在线观看不卡| 国产久卡久卡久卡久卡视频精品| av在线一区二区三区| 欧美va亚洲va| 日韩av电影天堂| av高清不卡在线| 欧美成人一区二区三区| 亚洲人123区| 久久99精品视频| 欧美最猛黑人xxxxx猛交| 国产欧美视频一区二区三区| 亚洲一区二区视频在线观看| 国内精品国产三级国产a久久| 欧美在线一区二区三区| 国产午夜三级一区二区三| 日韩国产在线一| 色天使色偷偷av一区二区| www国产亚洲精品久久麻豆| 麻豆精品精品国产自在97香蕉 | 成人午夜短视频| 日韩女优av电影| 亚洲一区中文在线| 一本久久综合亚洲鲁鲁五月天| 久久久天堂av| 亚洲国产va精品久久久不卡综合| 色综合夜色一区| 中文字幕亚洲在| 色综合久久久久综合体| 亚洲欧美偷拍卡通变态| 色综合咪咪久久| 最新日韩在线视频| 成人福利在线看| 亚洲欧美怡红院| 91在线视频播放| 亚洲国产精品综合小说图片区| 91精品国产91久久久久久一区二区 | 欧美一级二级三级乱码| 久久av中文字幕片|