nginx的负载均衡配置,常用策略

时间:2023-03-09 19:50:58
nginx的负载均衡配置,常用策略

场景:nginx是一款非常优秀的负载均衡服务器,小巧而且性能强悍,中小型企业的首选。

下面介绍nginx的负载均衡的几种常见的配置以及优缺点

第一种:轮询(默认)

  优点:实现简单

  缺点:不考虑每台服务器的处理能力

  实现:

upstream www.mmall.com{
server www.mmall.com:8080;
server www.mmall.com:9080;
}

第二种:权重(常用)

    优点:考虑到每台服务器的性能不同

  实现:

upstream www.mmall.com{
server www.mmall.com:8080 weight=10;
server www.mmall.com:9080 weight=5;
} 不配置weight的话 默认是1 如果配置 比如上图 是按照比例来算的 上图的意思是访问8080的概率是9080的两倍

第三种:ip hash

  优点:能使同一个用户访问同一台服务器

  缺点:根据ip hash 不一定平均

  实现:

upstream www.mmall.com{
ip_hash;
server www.mmall.com:8080;
server www.mmall.com:9080;
}

第四种:url hash(第三方)

优点:能使同一个服务访问同一台服务器

  缺点:根据url hash 不平均  请求频繁的url会请求到同一台服务器

  实现:

upstream www.mmall.com{
server www.mmall.com:8080;
server www.mmall.com:9080;
hash $request_uri
}

第五种:fair(第三方)

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

  实现:

upstream www.mmall.com{
server www.mmall.com:8080;
server www.mmall.com:9080;
fair
}