Nginx实现负载均衡

Nginx实现负载均衡_第1张图片
在http中写 upstream 后边加上自己定义的名字, 然后列出要负载均衡的服务和端口即可
在location 中 proxy_pass后边写上自己定义的服务名字

upstream myserver {
        server  xx.xx.xx.23:8080;
        server  xx.xx.xx.23:8081;
    }

    server {
        listen       80;
        server_name  xx.xx.xx.23;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            proxy_pass  http://myserver;
            index  index.html index.htm;
        }

Nginx负载均衡分配服务器的策略

  1. 轮询模式(默认):每个请求按照时间顺序逐一分配给不同的后台服务器, 如果后台服务器down掉, 能自动剔除
  2. 权重模式, 给每一个后台服务器分配一个权重, 权重越大, 配分配的客户端越多
upstream myserver {
        server  xx.xx.xx.23:8080 weight=5;
        server  xx.xx.xx.23:8081 weight=10;
    }
  1. ip_hash模式 , 每个请求按照访问的ip的hash结果来分配, 如果你的ip是xxx, 你第一次访问了第一台服务器, 那么以后你的这个ip就访问第一个服务器。
upstream myserver {
        ip_hash;
        server  xx.xx.xx.23:8080;
        server  xx.xx.xx.23:8081;
    }
  1. fair模式, 按照后台服务器响应时间来分配, 相应越快,就去分配
upstream myserver {
        server  xx.xx.xx.23:8080;
        server  xx.xx.xx.23:8081;
        fair;
    }

你可能感兴趣的:(nginx)