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

科技分類資訊推薦

不止蘋果和歐盟,三星也被點名,特朗普再揮關稅大棒引強烈反應 - 天天要聞

不止蘋果和歐盟,三星也被點名,特朗普再揮關稅大棒引強烈反應

據新華社24日報道,繼歐盟和蘋果公司之後,美國總統特朗普23日又向三星及全部手機企業發出關稅威脅。特朗普關稅大棒再度來襲,歐洲金融市場震蕩,重要股指紛紛下挫。有歐盟國家表示,有必要“展示報復措施”,以便在接下來的談判中建立真正的“力量平衡”。5月23日,在比利時布魯塞爾,一名男子從歐盟總部大樓外經過。新華...
上海公司官宣:2個月後首發!家用外骨骼機器人,每台僅4~8千元…記者實測:腰太省力 - 天天要聞

上海公司官宣:2個月後首發!家用外骨骼機器人,每台僅4~8千元…記者實測:腰太省力

外骨骼機器人是一種能夠增強人體力量、耐力和運動能力的可穿戴設備其應用領域很廣泛也即將走進普通家庭上海一公司生產的家用外骨骼機器人將在兩個月後首發價格僅4k~8k元一台外骨骼機器人通過與人體的緊密結合,藉助外部動力系統和智能控制技術,為使用者提供額外的支撐和助力。今年“五一”假期期間,外骨骼機器人在安徽黃...
火狐 Firefox 140 瀏覽器新特性:可管理、刪除端側 AI 模型 - 天天要聞

火狐 Firefox 140 瀏覽器新特性:可管理、刪除端側 AI 模型

IT之家 5 月 24 日消息,科技媒體 Windows Report 昨日(5 月 23 日)發布博文,報道稱 Mozilla 公司計劃在火狐 Firefox 140 瀏覽器中,支持用戶刪除用於智能標籤分組和鏈接預覽等功能的端側 AI 模型。IT之家註:Mozilla 近年來積極為 Firefox 瀏覽器開發 AI 功能,包括智能標籤分組、鏈接預覽,以及基
不通過非官方途徑下載APP 使用AI應用保密安全指南 - 天天要聞

不通過非官方途徑下載APP 使用AI應用保密安全指南

記者從國家安全部了解到,隨着人工智能技術的迅猛發展,AI應用在文字處理、數據分析、個性化服務等領域展現了卓越的能力,前所未有地融入我們工作和生活的方方面面。需要注意的是,我們在享受技術紅利之時,也應警惕數據安全與隱私保護等問題,特別是其存在的泄密風險隱患,妥善保護好個人信息和敏感數據。——選擇正規平台...
如何讓RTX 5060顯卡的性價比爆棚!AMD銳龍5平台給出答案 - 天天要聞

如何讓RTX 5060顯卡的性價比爆棚!AMD銳龍5平台給出答案

RTX 5060顯卡作為NVIDIA最新推出的中端遊戲顯卡,在2K分辨率下性能表現出色,尤其在DLSS 4技術加持下,幀率提升幅度可達60-150%。然而,顯卡本身的8GB顯存容量在部分高負載場景下可能成為瓶頸,這就需要一個能夠充分發揮其潛力的平台。經過深入研究,AMD平台憑藉其出色的單核性能、低功耗設計以及優秀的內存延遲優化,能夠...