Nginx负载均衡配置

对于一个大型网站来说,负载均衡是永恒的话题,负载均衡,顾名思义,即使将负载分摊到不同的服务单元,既可以保证服务的可用性,又可以保证响应足够快,给用户很好的体验。nginx负载均衡软件是目前大受欢迎的软件之一。下面通过Nginx的反向代理功能配置一个Nginx负载均衡服务器。

在/etc/nginx/conf/目录下新建一个配置文件http_proxy.conf,内容如下

upstream  myserver {

   server    需要代理的服务器地址或域名    weight=3     max_fails=3  fail_timeout=20s;

​             ......

}​

在上面定义的负载均衡组myserver中,组名可以根据需要随便取。

在/etc/nginx/conf/vhosts/目录下配置default.conf文件,内容如下:

server {

    listen    80;

    server_name  www.domain.com  ip地址;

    index index.html index.htm index.php;​

    root  网站目录

location  /  {

    proxy_pass  http://myserver;

    proxy_next_upstream http_500 http_502 http_503 error timeout invalid_header;​

    include   /alidata/server/nginx/conf/proxy.conf;​

}​

}

proxy_next_upstream 用来定义故障转移策略,当后端服务节点返回500、502、503、504和执行超时等错误时,自动将请求转发到updtream负载均衡组中的另一台服务器,实现故障转移。

proxy.conf内容如下:


Nginx负载均衡配置
编辑删除转载
2015-10-25 15:01:28
标签:linux服务器nginx

 对于一个大型网站来说,负载均衡是永恒的话题,负载均衡,顾名思义,即使将负载分摊到不同的服务单元,既可以保证服务的可用性,又可以保证响应足够快,给用户很好的体验。nginx负载均衡软件是目前大受欢迎的软件之一。下面通过Nginx的反向代理功能配置一个Nginx负载均衡服务器。

1、在/etc/nginx/conf/目录下新建一个配置文件http_proxy.conf,内容如下:

upstream  myserver {

            server    需要代理的服务器地址或域名    weight=3  max_fails=3  fail_timeout=20s;

​             ......

}​

 在上面定义的负载均衡组myserver中,组名可以根据需要随便取。

2、在/etc/nginx/conf/vhosts/目录下配置default.conf文件,内容如下:

server {

    listen    80;

    server_name  www.domain.com  ip地址;

    index index.html index.htm index.php;​

    root  网站目录

location  /  {

    proxy_pass  http://myserver;

    proxy_next_upstream http_500 http_502 http_503 error timeout invalid_header;​

    include   /alidata/server/nginx/conf/proxy.conf;​

}​

}

proxy_next_upstream 用来定义故障转移策略,当后端服务节点返回500502503504和执行超时等错误时,自动将请求转发到updtream负载均衡组中的另一台服务器,实现故障转移。

proxy.conf内容如下:

​proxy_redirect off;

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

client_body_buffer_size 128k;

proxy_connect_timeout 90;

proxy_send_timeout 90;

proxy_read_timeout 90;

proxy_buffer_size 4k;

proxy_buffers 4 32k;

proxy_busy_buffers_size 64k;

proxy_temp_file_write_size 64k;

proxy_set_header: 设置由后端的服务器获取用户的主机名或真实的IP地址,以及代理者真是IP地址。

client_body_buffer_size:用于指定客户端请求主体缓存大小。,可以理解为先保存到本地在传给用户。

proxy_connect_timeout: 表示与后端服务器连接的超时时间,即发起握手等候响应的超时时间。

proxy_send_timeout: 表示于后端服务器数据回传时间,即规定时间组织内后端服务器必须穿万所有数据,否则,Nginx将断口开这个连接。

​proxy_read_timeout:设置Nginx从代理的后端服务器获取信息的时间

proxy_bufferr_size:设置缓冲区大小。

proxy_buffers:设置缓冲区的数量和大小。

proxy_busy_buffer_size:用于设置系统很忙时可以使用的proxy_buffers大小。

proxy_temp_file_write-sizeL指定proxy缓存临时文件的大小。​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值