5种nginx负载均衡配置方法分享

 更新时间:2014年07月10日 10:34:33   投稿:junjie  
这篇文章主要介绍了5种nginx负载均衡配置方法分享,分别是nginx自带的3种方法和2种第三方配置方法,需要的朋友可以参考下

一、轮询(默认) 

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 

二、weight

指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。 
例如: 

复制代码 代码如下:
upstream bakend { 
server 192.168.0.14 weight=10; 
server 192.168.0.15 weight=10; 
}

三、ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 
例如: 

复制代码 代码如下:
upstream bakend { 
ip_hash; 
server 192.168.0.14:88; 
server 192.168.0.15:80; 

四、fair(第三方)

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

复制代码 代码如下:
upstream backend { 
server server1; 
server server2; 
fair; 
}
 

五、url_hash(第三方)  

按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。 
例:在upstream中加入hash语句,server语句中不能写入weight等其他的参数,hash_method是使用的hash算法 

复制代码 代码如下:
upstream backend { 
server squid1:3128; 
server squid2:3128; 
hash $request_uri; 
hash_method crc32; 
}
 
tips: 
复制代码 代码如下:
upstream bakend{#定义负载均衡设备的Ip及设备状态 
ip_hash; 
server 127.0.0.1:9090 down; 
server 127.0.0.1:8080 weight=2; 
server 127.0.0.1:6060; 
server 127.0.0.1:7070 backup; 

在需要使用负载均衡的server中增加 

复制代码 代码如下:
proxy_pass http://bakend/;
 

每个设备的状态设置为: 

1.down 表示单前的server暂时不参与负载 
2.weight 默认为1.weight越大,负载的权重就越大。 
3.max_fails :允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误 
4.fail_timeout:max_fails次失败后,暂停的时间。 
5.backup: 其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。 
nginx支持同时设置多组的负载均衡,用来给不用的server来使用。 
client_body_in_file_only 设置为On 可以讲client post过来的数据记录到文件中用来做debug 
client_body_temp_path 设置记录文件的目录 可以设置最多3层目录 
location 对URL进行匹配.可以进行重定向或者进行新的代理 负载均衡

相关文章

  • Nginx反向代理+DNS轮询+IIS7.5 千万PV 百万IP 双线 网站架构案例

    Nginx反向代理+DNS轮询+IIS7.5 千万PV 百万IP 双线 网站架构案例

    某公司有一站点,一天IP 430W,PV 3100W,之前采用5台 DELL R610 做NLB,系统2008 IIS7.5.每天高峰期时都不堪重负.会出现以下情况
    2012-11-11
  • Nginx服务器中为网站或目录添加认证密码的配置详解

    Nginx服务器中为网站或目录添加认证密码的配置详解

    这篇文章主要介绍了Nginx服务器中为网站或目录添加认证密码的配置详解,使用到了Apache的htpasswd工具,需要的朋友可以参考下
    2016-01-01
  • django8.5 项目部署Nginx的操作步骤

    django8.5 项目部署Nginx的操作步骤

    nginx是一个开源的,支持高性能,高并发的www服务和代理服务软件。它是一个俄罗斯人lgor sysoev开发的,作者将源代码开源出来供全球使用,下面小编给大家带来了django8.5 项目部署Nginx的操作步骤,感兴趣的朋友一起看看吧
    2022-01-01
  • nginx的限流和网关gatway限流详解

    nginx的限流和网关gatway限流详解

    这篇文章主要介绍了nginx的限流和网关gatway限流,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • Nginx实现正向代理实例

    Nginx实现正向代理实例

    这篇文章主要介绍了Nginx实现正向代理实例,正向代理的作用在于正向代理隐藏了用户,用户的请求被代理服务器接收代替,到了服务器,服务器并不知道用户是谁,需要的朋友可以参考下
    2023-08-08
  • Nginx的配置文件结构和各种配置指令

    Nginx的配置文件结构和各种配置指令

    Nginx是一款高性能的Web服务器和反向代理服务器,常常被用作Web服务器、负载均衡器、反向代理和缓存服务器等,本文将详细介绍Nginx的配置文件结构和各种配置指令,帮助你理解和正确配置Nginx 服务器
    2024-03-03
  • 在Nginx服务器上屏蔽IP的一些基本配置方法分享

    在Nginx服务器上屏蔽IP的一些基本配置方法分享

    这篇文章主要介绍了在Nginx服务器上屏蔽IP的一些基本配置方法分享,包括对过多访问的IP配置脚本屏蔽等一些小技巧,的朋友可以参考下
    2015-12-12
  • nginx查看连接数的几种方法小结

    nginx查看连接数的几种方法小结

    nginx作为目前最流行的web服务器之一,在许多生产环境都能看到他的踪影,有时候,我们需要统计nginx的连接配置,本文主要分享一下如何统计nginx的连接数,需要的朋友可以参考下
    2024-02-02
  • Nginx+uwsgi+ssl配置https的详细步骤

    Nginx+uwsgi+ssl配置https的详细步骤

    nginx是一个轻量级的web服务器,在处理静态资源和高并发有优势,uwsgi是一个基于python的高效率的协议,处理后端和动态网页有优势,我这里使用的是Ubuntu18.04版本,服务器在阿里云,感兴趣的朋友跟随小编一起看看吧
    2023-10-10
  • nginx 伪静态Rewrite正则资源汇总

    nginx 伪静态Rewrite正则资源汇总

    本文给大家汇总介绍了nginx中使用rewrite伪静态正则表达式的资源,非常的全面详细,有需要的小伙伴可以参考下
    2016-08-08

最新评论