zoukankan      html  css  js  c++  java
  • 配置nginx到后端服务器负载均衡

      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 {}块之外添加如下配置:

        upstream  my_service {
            server    127.0.0.1:8080  weight=2;
            server    192.168.1.24:8080  weight=1;
            server    192.168.1.25:8080  weight=1;  
        }

      上面的my_service是集群的名字,可以自己命名,server指定后端服务列表,weight是设置权重,权重越大,请求被分发过来的可能性就越大,这里本机权重设置了2,也就是说对到达的请求分配到本地上的会多一些

      配置这个之后,需要在server {}中添加location配置拦截请求并转发给后端的集群,最简单的配置如下:

    location / {
        proxy_pass http://my_service;
        proxy_redirect default;
    }

      这样配置之后保存并重新载入,然后对于所有的请求都会转发到这个集群指定的机器处理了,当然也可以设置拦截具体的请求比如.do或者.action都可以根据需要设置;另外location里面也可以设置更多的配置项,比如客户端body大小,buffer大小,超时时间等,配置参考如下:

    location / {
        proxy_pass http://my_service;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        client_max_body_size 10m;
        client_body_buffer_size 128k;
        proxy_connect_timeout 90;
        proxy_send_timeout 90;
        proxy_read_timeout 90;
        proxy_buffer_size 4k;
        proxy_buffers 4 32k;
        proxy_busy_buffers_size 64k;
        proxy_temp_file_write_size 64k;
    }  

      上面的配置可以参考,根据具体业务需要配置即可,nginx负载均衡的配置基本上就是上面这些

  • 相关阅读:
    Qt5中QMessageBox::warning()的第一个参数写this时出错
    Qt5如何设置静态编译,解决生成的可执行文件打开出错问题
    SpringCloud OAuth2实现单点登录以及OAuth2源码原理解析
    Redis分区
    Redis持久化
    如何合理地估算线程池大小?
    并发减库存
    Java导出Excel
    电商促销后台逻辑
    Java8虚拟机内存模型
  • 原文地址:https://www.cnblogs.com/freeweb/p/6513973.html
Copyright © 2011-2022 走看看