zoukankan      html  css  js  c++  java
  • 【nginx】基于nginx的负载均衡

    1.实现效果

         在浏览器中访问http://xxxxx/dev/a.html,负载均衡效果,平均在8080和8081端口中。

        

    2.准备工作

         提前准备好两个tomcat  端口号一个是8081 另一个是8080 在两个tomcat中创建目录dev 以及目录下添加a.html。

    3.在nginx中配置文件中进行负载均衡配置

    在nginx中配置文件中 添加如下。

        # nginx balance
        upstream myserver{
            server    192.168.58.136:8080;
            server    192.168.58.136:8081;
       }
    
        server {
            listen       80;
            server_name  192.168.58.136;
    
            location / {
               proxy_pass  http://myserver;
               root   html;
               index  index.html index.htm;
            }
        }
    

    4.测试结果

             每刷新一次,8080 和  8081 平均负载 http请求。

          

    5.  Nginx的4种负载策略

    5.1 轮询(默认)

    每个请求按时间顺序逐一分配不同的后端服务器,如果后端服务器宕机,则自动剔除。

    5.2 weight 

    weight 代表权重,默认为1,权重越高被分配的客户端越多。

    执行轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

    示例

    upstream server_pool{
        server 192.168.5.21 weight=10;
        server 192.168.5.22 weight=10;
    }

    5.3 Ip_hash

    每个请求按访问ip的hash结果分配,这样每个用户固定访问一个后端服务器,可以解决session的问题。但是存在单点故障问题。所以根据业务情况选择。

    upstream server_pool{
        ip_hash; 
        server 192.168.5.21:80;
        server 192.168.5.22:80;
    } 

    5.4 fair(第三方)

    按后端服务器的响应时间来分配请求,响应时间短的优先分配。

    upstream server_pool(
         server 192.168.5.21:80; 
         server 192.168.5.22:80; 
       fair;
    }

     

  • 相关阅读:
    VirtualBox不显示64bit版本的iso
    学习和参考资料
    神经网络和机器学习资料整理
    动态空间释放时的错误操作引起的运行时错误
    WIN7 X64的运行命令窗口
    vs2010中的ADO控件及绑定控件
    AdventureWorks2012.mdf的使用
    VS2008/2010 都不能使用Access2010数据库
    WIN7 64位操作系统 无法找到Access驱动
    如何在VS2010的VC++ 基于对话框的MFC程序中添加菜单
  • 原文地址:https://www.cnblogs.com/qxlxi/p/12860710.html
Copyright © 2011-2022 走看看