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)——專註於最新最前沿的軟體測試技術,解決你的測試技術煩惱,對軟體測試感興趣的朋友趕快關注我們吧!

科技分類資訊推薦

開放合作 成就彼此 - 天天要聞

開放合作 成就彼此

第四屆中國—中東歐國家博覽會「數智中東歐」展區展出的多發混合動力飛機,該機由奧地利鑽石飛機公司研發。
液冷技術的現狀 - 天天要聞

液冷技術的現狀

隨著AI的發展,推動算力需求激增,同時高密度的發展也直接或間接推動冷卻系統的革命進程。
生態補償機制如何破題多維生態保護?國常會再提生態補償升級 - 天天要聞

生態補償機制如何破題多維生態保護?國常會再提生態補償升級

南都訊 記者王瑋 發自北京 國務院總理李強5月23日主持召開國務院常務會議,研究進一步健全橫向生態保護補償機制有關舉措。會議指出,建立成本共擔、效益共享、合作共治的橫向生態保護補償機制,對於加強生態環境保護、促進區域間協同發展具有重要意義。2024年4月6日,國務院總理李強簽署第779號國務院令,公布《生態保護補...
勞模風采·2025年全國勞動模範|宋濤:自主創新打造港口「智慧芯」 - 天天要聞

勞模風采·2025年全國勞動模範|宋濤:自主創新打造港口「智慧芯」

人物名片宋濤,1983年10月出生,河北港口集團曹妃甸港礦石碼頭股份有限公司調度指揮部部長、科研總監、首席技術工匠。十多年來,宋濤以實際行動踐行工匠精神,不斷創新創造,曾榮獲「大國工匠年度人物」提名人選、河北省勞動模範、河北省五一勞動獎章、河北省「十大最美港航人」等稱號。2025年被授予全國勞動模範稱號。臉上...
人工耳蝸等醫療新技術納入醫保 價格項目惠民生 - 天天要聞

人工耳蝸等醫療新技術納入醫保 價格項目惠民生

央視網消息:記者5月23日從國家醫保局獲悉,為推動新產品、新技術快速進入臨床應用,截至目前,國家醫保局已發布28批醫療服務價格立項指南,其中,新增涉及新產品的價格項目達100多項。 國家醫....
即夢VS可靈,下一步戰火燒向何方? - 天天要聞

即夢VS可靈,下一步戰火燒向何方?

本文來自微信公眾號:壹娛觀察(ID: yiyuguancha),文/大娛樂家。當位元組跳動的即夢AI與快手的可靈AI在國內文生視頻賽道激烈廝殺時,大洋彼岸的谷歌 I/O 2025卻悄然為這場競爭指明了新的方向。此刻,國內的AI文生視頻產品無疑
跨越「數字鴻溝」,社區開展老年人智能手機培訓 - 天天要聞

跨越「數字鴻溝」,社區開展老年人智能手機培訓

近日,蘇州市姑蘇區滄浪街道西大街社區教育中心內洋溢著濃厚的學習氛圍,一場老年人智能手機科普活動在這裡開展。此次活動由西大街社區聯合姑蘇區人社局以及退役軍人服務站共同舉辦,旨在幫助社區內的老年居民跨越「數字鴻溝」,更好地適應和享受智能時代的便
家庭與商務雙重滿足!2025三款豪華MPV深度推薦 - 天天要聞

家庭與商務雙重滿足!2025三款豪華MPV深度推薦

在家庭出行和商務接待需求日益升級的背景下,豪華MPV市場成為車企爭相布局的重要領域。作為兼具空間、舒適性和智能化的車型類型,MPV正逐漸打破傳統用途的限制,成為更多消費者的購車新選擇。在2025年,魏牌全新高山、嵐圖夢想家和豐田埃爾法以其獨特的設計與強大的產品
2025豪華MPV新標杆!三款車型全方位對比解析 - 天天要聞

2025豪華MPV新標杆!三款車型全方位對比解析

豪華MPV市場近年來的持續火熱不僅反映了消費者需求的升級,也記錄了汽車行業在多功能性與高端化領域的不斷探索。無論是家庭出行的舒適體驗,還是商務接待場合的形象提升,豪華MPV逐漸成為兼顧生活和事業的「全能型選手」。在2025年,魏牌全新高山、嵐圖夢想家和豐田埃爾