快捷导航

云服务器Nginx的负载均衡配置教程

[复制链接]
查看: 104|回复: 0
发表于 2023-6-29 15:27:39 | 显示全部楼层 |阅读模式
Nginx和haproxy一样也可以做前端请求分发实现负载均衡效果,比如一个tomcat服务如果并发过高会导致处理很慢,新来的请求就会排队,到一定程度时请求就可能会返回错误或者拒绝服务,所以通过负载均衡使用多个后端服务器处理请求,是比较有效的提升性能的方法;另外当单机性能优化到一定瓶颈之后,一般也会用负载均衡做集群,配置也很简单,下面是配置过程:  首先需要安装nginx服务器,我这里已经安装好了,比如这里有三个tomcat服务器,地址如下:  192.168.1.23:8080  192.168.1.24:8080  192.168.1.25:8080  其中nginx安装在192.168.1.23上面,如果只有一个服务器测试,也可以在一个服务器上运行多个tomcat开多个端口来实现,这样也能提升性能。  首先看nginx配置,在nginx.conf中http{}块内并且server{}块之外添加如下配置:  upstreammy_service{server127.0.0.1:8080weight=2;server192.168.1.24:8080weight=1;server192.168.1.25:8080weight=1;}  上面的my_service是集群的名字,可以自己命名,server指定后端服务列表,weight是设置权重,权重越大,请求被分发过来的可能性就越大,这里本机权重设置了2.也就是说对到达的请求分配到本地上的会多一些。  配置这个之后,需要在server{}中添加location配置拦截请求并转发给后端的集群,最简单的配置如下:  location/{proxy_passhttp://my_service;proxy_redirectdefault;}  这样配置之后保存并重新载入,然后对于所有的请求都会转发到这个集群指定的机器处理了,当然也可以设置拦截具体的请求比如.do或者.action都可以根据需要设置;另外location里面也可以设置更多的配置项,比如客户端body大小,buffer大小,超时时间等,配置参考如下:  location/{proxy_passhttp://my_service;proxy_redirectoff;proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;client_max_body_size10m;client_body_buffer_size128k;proxy_connect_timeout90;proxy_send_timeout90;proxy_read_timeout90;proxy_buffer_size4k;proxy_buffers432k;proxy_busy_buffers_size64k;proxy_temp_file_write_size64k;}  上面的配置可以参考,根据具体业务需要配置即可。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

精彩推荐

尚云驿站

  • 投诉建议:350467567@qq.com
  • 软文投稿:350467567@qq.com
  • 友情链接:350467567@qq.com

云服务支持

精彩文章,快速检索

Copyright 尚云驿站  Powered by©  技术支持:飛    ( 闽ICP备2025116718号-15 )