nginx负载均衡的实现
来源:互联网 发布:淘宝网旗袍专卖 编辑:程序博客网 时间:2024/04/28 22:07
将一台nginx主机当作前端负载均衡服务器,后面通过交换机链接多台web服务器,提供html和php的web界面服务。通过配置前端负载均衡服务器,可以实现将html界面和php界面的分开访问,即html页面一个服务器,php页面使用另一台服务器达到负载均衡的效果。或者:配置多台服务器提供同一个页面的web服务,当访问量很大时,可以均衡web服务器的流量,对同一个页面实现负载均衡。
具体配置如下:
#vi nginx.conf
在http中添加如下配置
upstream html.dear.com{
server 10.0.8.29:80 weight=1 max_fails=2 fail_timeout=30s;
}
upstream www.dear.com{
server 10.0.8.32:80 weight=1 max_fails=2 fail_timeout=30s;
server 10.0.8.31:80 weight=1 max_fails=2 fail_timeout=30s;
} #权重,值相同就平分访问量#最大请求失败次数和失败时间,超出就跳到另一个服务器进行访问。
proxy_pass http://www.dear.com; #此路径由upstream指定。
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
}
#当访问以.php结尾的页面时,就由proxy_pass跳转到www.dear.com进行访问,此页面由前面upstream设置。
location ~ \.html$ {
proxy_pass http://html.dear.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
具体配置如下:
#vi nginx.conf
在http中添加如下配置
upstream html.dear.com{
server 10.0.8.29:80 weight=1 max_fails=2 fail_timeout=30s;
}
upstream www.dear.com{
server 10.0.8.32:80 weight=1 max_fails=2 fail_timeout=30s;
server 10.0.8.31:80 weight=1 max_fails=2 fail_timeout=30s;
} #权重,值相同就平分访问量#最大请求失败次数和失败时间,超出就跳到另一个服务器进行访问。
#以下参数可以根据需求进行设置
#压缩变量设置
gzip on;
# gzip_min_length 2k;
# gzip_buffers 4 64k;
# gzip_http_version 1.1;
# gzip_comp_level 5;
# gzip_types text/plain application/x-javascript text/css application/xml;
# gzip_vary off;
##客户端设置
# client_max_body_size 100m;
# client_body_buffer_size 512k;
# client_header_timeout 5m;
# client_body_timeout 5m;
##代理设置
# proxy_connect_timeout 60;
# proxy_read_timeout 60;
# proxy_send_timeout 60;
# proxy_buffer_size 128k;
# proxy_buffers 4 128k;
# proxy_busy_buffers_size 128k;
# proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
# proxy_temp_file_write_size 128k;
# proxy_max_temp_file_size 128k;
# proxy_cache_path /tmp/nginx levels=1:2
# keys_zone=one:10m
# inactive=7d max_size=10g;
在server中添加如下配置(可以理解为一个server配置就是一个web服务)
location ~ \.php$ {#压缩变量设置
gzip on;
# gzip_min_length 2k;
# gzip_buffers 4 64k;
# gzip_http_version 1.1;
# gzip_comp_level 5;
# gzip_types text/plain application/x-javascript text/css application/xml;
# gzip_vary off;
##客户端设置
# client_max_body_size 100m;
# client_body_buffer_size 512k;
# client_header_timeout 5m;
# client_body_timeout 5m;
##代理设置
# proxy_connect_timeout 60;
# proxy_read_timeout 60;
# proxy_send_timeout 60;
# proxy_buffer_size 128k;
# proxy_buffers 4 128k;
# proxy_busy_buffers_size 128k;
# proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
# proxy_temp_file_write_size 128k;
# proxy_max_temp_file_size 128k;
# proxy_cache_path /tmp/nginx levels=1:2
# keys_zone=one:10m
# inactive=7d max_size=10g;
在server中添加如下配置(可以理解为一个server配置就是一个web服务)
proxy_pass http://www.dear.com; #此路径由upstream指定。
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
}
#当访问以.php结尾的页面时,就由proxy_pass跳转到www.dear.com进行访问,此页面由前面upstream设置。
location ~ \.html$ {
proxy_pass http://html.dear.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
}
#当访问以.html结尾的页面时,跳转到html.dear.com进行访问。
#当访问以.html结尾的页面时,跳转到html.dear.com进行访问。
- Nginx负载均衡的实现
- nginx负载均衡的实现
- 实现nginx的负载均衡
- 实现nginx的负载均衡
- MySQL负载均衡-2:nginx 实现mysql的负载均衡
- Nginx实现负载均衡
- nginx 实现负载均衡
- Nginx实现负载均衡
- Nginx实现负载均衡
- nginx实现负载均衡
- Nginx实现负载均衡
- nginx实现负载均衡
- Nginx实现负载均衡
- nginx实现负载均衡
- Nginx实现负载均衡
- nginx实现负载均衡
- nginx 实现负载均衡
- nginx实现负载均衡
- Java 事件机制
- 在mysql中使用触发器完整示例
- 想招好程序员吗?一分钱一分货
- Shell awk 内置变量
- 窥探 kernel --- 调度器发展史
- nginx负载均衡的实现
- C++和Objective-C混编(官方文档翻译)
- java代理模式 (转)
- android 数据传递详解(Serialization、Parcelable、Parcel、Intent、Bundle)
- 存储过程中执行动态Sql语句
- iOS的影片播放MediaPlayer 和avplayer的简单用法
- vim显示行号、语法高亮、自动缩进的设置
- 关于在Myeclipse下,tomcat重启自动进入debug模式的解决方案
- 行转列、列转行(sys_connect_by_path,row_number() over,count(*) over),wmsys.wm_concat