欢迎光临
我们一直在努力

nginx配置http负载均衡(一)

根据官方的文档,首先给出了如下所示的范例

http {
   upstream myapp1 {
       server srv1.example.com;
       server srv2.example.com;
       server srv3.example.com;
   }

   server {
       listen 80;
       location / {
           proxy_pass http://myapp1;
       }
   }
}

这个例子就是配置了一个名为myapp1的http负载均衡服务器

即为http负载均衡的基本配置格式和语法

nginx负载均衡包括:轮训(round-robin)、最少连接(least-connected)、ip哈希(ip-hash)三种机制

轮训:发送到服务器端的http请求被轮训到负载均衡配置中的服务器;

最少连接:发送到服务器端的http请求被分配到负载均衡配置中活动链接数最少的服务器;

IP哈希:使用一种基于客户端的IP地址的哈希方法来决定分配到请求的服务器

配置方法如下:


  • 最少连接负载均衡

    upstream myapp1 {
       least_conn;
       server srv1.example.com;
       server srv2.example.com;
       server srv3.example.com;
   } 

  • ip哈希

    upstream myapp1 {
       ip_hash;
       server srv1.example.com;
       server srv2.example.com;
       server srv3.example.com;
   }

  • 轮训

       upstream myapp1 {
           server srv1.example.com weight=3;
           server srv2.example.com;
           server srv3.example.com;
       }
   解释:weight为权重,默认为1,如果有五个请求,那么前三个请求会被分配到srv1,第四个请求分配至srv2,第五个请求分配至srv3,如此周而复始。

注意:

       1,默认为轮训方式;

       2,最少连接数和轮训机制会在客户端与服务器会话期间将客户端的请求分配到不同的服务器,而ip哈希可以维持会话,将请求始终保持在同一服务器上

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。