nginx+spring boot 微服務實現負載均衡

2020年11月22日10:52:03 科技 1923

環境準備

項目 JDK1.8 以上版本

準備好 nginx 環境

nginx 配置

nginx 的配置文件在/usr/local/nginx/conf 目錄下,配置文件 nginx.conf

配置信息如下:

upstream web_app {

server 192.168.226.150:8089   max_fails=2 fail_timeout=30s;

}

upstream web_app:定義一個名稱,隨意取名

server + ip:端口 or 域名

在虛擬主機添加如下配置

# 虛擬主機配置

server {

listen       80;

server_name  localhost;

location / {

 #root   html;       #定義服務器的默認根目錄位置

 #index  index.html index.htm;

 #反向代理的配置

 #如果後端的服務器返回502,504,執行超時等錯誤,自動將請求轉發到upstream負載均衡中的一台服務器

 #實現故障轉移

      proxy_next_upstream http_502 http_504 error timeout invalid_header;

     #將代理服務器收到的用戶的信息傳到真實服務器上

      proxy_set_header Host  $host;

      proxy_set_header X-Real-IP $remote_addr;

      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

# 與上面配置的轉發的名稱一致

      proxy_pass http://web_app;

}

說明:

server:虛擬主機的名稱,一個 HTTP 中可以配置多個 server;

listen:nginx 默認的端口

server_name:nginx 服務的地址, 可以使用域名,多個用空格分隔

proxy_pass :代理路徑,一般配置 upstream 後面的名稱用於實現負載均衡可以直接配置 ip 進行跳轉

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 web_app{

server 192.168.226.150:8089 max_fails=2 fail_timeout=30s;

}

server {

listen       80;

server_name  127.0.0.1;

location / {

 root   html;

proxy_pass http://web_app;

 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

[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload

微服務啟動:

[root@pertest bin]# sh server.sh restart

訪問接口,通過 nginx 的 ip:端口 + 接口後綴地址

nginx+spring boot 微服務實現負載均衡 - 天天要聞

通過 nginx 的日誌,也可以看到訪問成功了

nginx+spring boot 微服務實現負載均衡 - 天天要聞

當有多個節點的時候,在 nginx 配置文件裏面加上對應的 ip:端口就可以了。

本文作者:檸檬班軟件測試(lemonban)——專註於最新最前沿的軟件測試技術,解決你的測試技術煩惱,對軟件測試感興趣的朋友趕快關注我們吧!

科技分類資訊推薦

華為Pura 80 Pro/Pro+今日首銷 售價6499元起 - 天天要聞

華為Pura 80 Pro/Pro+今日首銷 售價6499元起

站長之家(ChinaZ.com) 6月14日 消息:今日上午10:08,華為Pura80Pro和Pura80Pro+正式開啟銷售,首批在官網搶購以及線下預定的用戶將陸續拿到新機。這兩款機型在整體外觀與配置上較為相似,不過在屏幕影像規格方面存在細微差別。在屏幕玻璃材質上,Pura80Pro採用的是第二代崑崙玻璃面板,而Pura80Pro+則配備了與Ultra相
物流快遞行業  備戰英吉沙鮮杏銷售 - 天天要聞

物流快遞行業 備戰英吉沙鮮杏銷售

眼下,17.75萬畝英吉沙杏即將迎來豐收。為確保這些美味鮮果能以最佳狀態送達全國各地消費者手中,新疆英吉沙縣物流行業提前謀劃、周密部署,一場全方位的運輸保障工作正在緊鑼密鼓地籌備中。順豐鮮杏包裝盒 (娜扎凱提 攝)「當天採摘,當天轉運,當天運輸……」近日,新疆順豐速運有限公司英吉沙縣分公司內,一場關於英吉...
蘋果Liquid Glass UI影響文字可讀性並提高設計界面難度引發質疑 - 天天要聞

蘋果Liquid Glass UI影響文字可讀性並提高設計界面難度引發質疑

今年晚些時候蘋果設備即將推出的操作系統更新,將帶來該公司十多年來首次重大的用戶界面設計變革,但眼尖的觀察者會發現它與舊版 Windows 有相似之處——微軟也注意到了這一點。不過那些對蘋果即將推出的界面感到擔憂的用戶將可以選擇更改其視覺呈現
馬克龍希望說服台積電/三星在法國建立尖端設施 - 天天要聞

馬克龍希望說服台積電/三星在法國建立尖端設施

繼美國大力推動芯片生產之後,歐洲似乎是下一個,因為法國總統現在渴望將台積電和三星引入該國,以在國內獲取高端節點。隨着全球供應鏈的急劇演變,各國已將重點轉向通過在本地生產來滿足芯片需求。
高壓電纜短缺可能會阻礙清潔能源轉型 - 天天要聞

高壓電纜短缺可能會阻礙清潔能源轉型

隨着各國在可再生能源和電氣化方面設定越來越宏偉的目標,不起眼的高壓電纜已成為全球經濟脫碳競賽中的關鍵,同時也是潛在的瓶頸。彭博社對丹麥領先電纜製造商 NKT 首席執行官 Claes Westerlind 的採訪,解釋了其中的原因。全球高壓電
OPPO、vivo 手機錢包上線重慶暢通卡-交通聯合版 - 天天要聞

OPPO、vivo 手機錢包上線重慶暢通卡-交通聯合版

IT之家 6 月 14 日消息,重慶暢通卡・交通聯合版現上線 OPPO、vivo 手機錢包 App,用戶可使用支持 NFC 功能的 OPPO 或 vivo 手機開通此卡乘坐軌道交通和公交車,並隨時隨地為卡片充值。本卡屬於全國交通一卡通互聯互通卡,除重慶主城區外(主城區刷卡可享折扣優惠),還可以在支持全國互聯互通的城市使用(已支持全國 300+...
第四屆遙感·通信創新大會在長春隆重開幕 - 天天要聞

第四屆遙感·通信創新大會在長春隆重開幕

2025年6月12日,由長光衛星技術股份有限公司主辦的第四屆遙感·通信創新大會在長春正式開幕。本屆大會延續「創新發展 合作共贏」主題,匯聚了來自中國工程院、清華大學、國家對地觀測科學數據中心等500餘家單位的1200餘位領導及嘉賓,通過展覽展示、主題演講等豐富形式,深入交流遙感與通信領域的前沿技術、創新成果與發展...