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年,魏牌全新高山、岚图梦想家和丰田埃尔