场景: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 }