一、nginx简介

nginx是一个高性能的HTTP服务器和反向代理服务器。它起初是俄罗斯人Igor Sysoev开发的,至今支撑者俄罗斯的很多大型的网站。

二、nginx支持的三种负载均衡策略

轮询:将请求依次轮询发给每个服务器。

最少链接:将请求发送给持有最少活动链接的服务器。

ip哈希:通过哈希函数决定请求发送给哪个服务器。

权重:服务器的权重越高,处理请求的概率越大。

三、轮询负载均衡

在nginx.conf配置文件中添加如下配置,此配置有三台服务器提供支付服务。

http {
 upstream CashServers {
  server CashServers1.com;
  server CashServers2.com;
  server CashServers3.com;
 }

 server {
  listen 80;

  location / {
   proxy_pass http://CashServers;
  }
 }
}

需要注意以下几点

1.缺省配置就是轮询策略;

2.nginx负载均衡支持http和https协议,只需要修改 proxy_pass后协议即可;

3.nginx支持FastCGI, uwsgi, SCGI,memcached的负载均衡,只需将 proxy_pass改为fastcgi_pass, uwsgi_pass, scgi_pass,memcached_pass即可。

4.此策略适合服务器配置相当,无状态且短平快的服务使用。

四、最少链接负载均衡

http {
 upstream CashServers {
  least_conn;
  server CashServers1.com;
  server CashServers2.com;
  server CashServers3.com;
 }

 server {
  listen 80;

  location / {
   proxy_pass http://CashServers;
  }
 }
}

需要注意以下几点

1.最少链接负载均衡通过least_conn指令定义;

2.此负载均衡策略适合请求处理时间长短不一造成服务器过载的情况;

五、ip哈希负载均衡

http {
 upstream CashServers {
  ip_hash;
  server CashServers1.com;
  server CashServers2.com;
  server CashServers3.com;
 }

 server {
  listen 80;

  location / {
   proxy_pass http://CashServers;
  }
 }
}

需要注意以下几点

1.ip哈希负载均衡使用ip_hash指令定义;

2.nginx使用请求客户端的ip地址进行哈希计算,确保使用同一个服务器响应请求;

3.此策略适合有状态服务,比如session;

六、权重负载均衡

http {
 upstream CashServers {  
  server CashServers1.com weight=3;
  server CashServers2.com weight=2;
  server CashServers3.com weight=1;
 }

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

需要注意以下几点

1. 权重负载均衡需要使用weight指令定义;

2. 权重越高分配到需要处理的请求越多;

3.此策略可以与最少链接负载和ip哈希策略结合使用;

4.此策略比较适合服务器的硬件配置差别比较大的情况;

七、健康检测

nginx内置了针对服务器的健康检测机制,如果特定服务器请求失败,则nginx即可进行标记待下次就不会请求分配给它。max_fails定义失败指定次数后进行标记服务器不可用。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

标签:
nginx,负载均衡,nginx实现负载均衡,nginx负载均衡策略

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com

评论“使用Nginx实现负载均衡的策略”

暂无“使用Nginx实现负载均衡的策略”评论...

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?