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,如果已经启动可以使用/usr/local/nginx/sbin/nginx -s reload命令进行热加载配置文件,windows直接点击Nginx目录下的nginx.exe或者 cmd运行start nginx进行启动,如果启动了依旧可以使用nginx -s reload进行热加载 。
Nginx启动完成之后,我们依次启动刚刚下载的springboot和复制更改端口的项目,输入:JAVA -jar springboot-jsp-thymeleaf.jar启动 。
都启动成功之后,我们在浏览器输入服务的ip即可进行访问 。
示例图:
文章插图
注:这里我使用的是windows系统做测试,实际linux也是一样的 。
然后我们进行操作,并查看控制台日志!
文章插图
从上述示例图中我们进行4次界面刷新请求,最终平均分配到两个服务中去了,从上述的测试结果中我们实现了负载均衡 。
这里我在说一下使用Nginx的注意事项,在进行学习和测试的时候,使用nginx默认的端口实现负载均衡一般没有什么问题,但是当我们在项目中使用的时候,特别有登录界面的并且端口不是80的时候,会出现登录的界面无法跳转,进行调试的话会出现 net::ERR_NAME_NOT_RESOLVED这样的错误,出现这个原因的是因为nginx默认的端口是80,那么默认跳转的也是这个,所以出现这种情况的时候,需要在location 下添加proxy_set_header Host $host:port 这个配置,port 和listen 的端口保持一致就可以了 。
【Nginx+SpringBoot实现负载均衡】
推荐阅读
- 做大做强闽东茶产业 宁德茶业实现跨越发展
- 沧源县18月茶业实现增产增收
- 如何利用Token实现分布式Session?
- 土林牌系列普洱茶出口实现零突破
- 舒城加快推进茶业发展 力争实现茶农收入翻番
- 确保湘茶出口持续增长 实现年出口值2亿美元
- 保靖县黄金茶春夏茶采制实现产值破亿元
- 嵊州实现出口珠茶企业专门人才全覆盖
- php+nginx实现自动化部署脚本
- 安溪茶展,探索商业化模式 实现买全球卖全球