这里有新鲜出炉的Nginx开发从入门到精通,程序狗速度看过来!
Nginx 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
Nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至不同的Web服务器。下面通过本文给大家分享Nginx负载均衡配置简单配置方法,需要的的朋友参考下吧
背景
当一个网站从小到大,访问量逐渐增大现有的服务器已经支撑不住,一般的解决方案就是缓存、加服务器、数据库读写分离、实行负载均衡分布式等等,本人对这些技术方案都没有在项目中具体的实践过,
但是一直听同事过说起,利用空闲时间自我学习了解下;
负载均衡
什么是负载均衡,就是当快要承受不住的时候,又给你一台服务器来分担压力,请求会分配到两台服务器上,两台服务器上部署相同的内容相当于一个分身,可以处理相同的事情;
Nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至不同的Web服务器
Nginx配置文件
1) 从Nginx官网下载 http://nginx.org/en/download.html
2) 安装Nginx,并找到nginx.conf文件(C:\nginx\conf\nginx.conf);
在http中加入配置:
加权轮询,按服务器的性能给予权重,本例是1:2分配
- upstream www.woizuqiu.com {
- server 192.168.1.1:8080 weight=1;
- server 192.168.1.1:8090 weight=2;
- }
ip_hash轮询方法,不可给服务器加权重,nginx会让相同的客户端ip请求相同的服务器
- upstream www.woizuqiu.com {
- server 192.168.1.1:8080;
- server 192.168.1.1:8090 max_fails=3 fail_timeout=30s ;
- ip_hash;
- }
根据服务器的本身的性能差别及职能,可以设置不同的参数控制。
down 表示负载过重或者不参与负载
weight 权重过大代表承担的负载就越大
backup 其它服务器时或down时才会请求backup服务器
max_fails 失败超过指定次数会暂停或请求转往其它服务器
fail_timeout 失败超过指定次数后暂停时间
server配置如下:
- server {
- listen 80;
- server_name www.woizuqiu.com;
- #charset koi8-r;
- #access_log logs/host.access.log main;
- location / {
- add_header backendIP $upstream_addr;#被转发到的上游服务器地址
- add_header backendCode $upstream_status;#状态码
- proxy_pass http://www.woizuqiu.com;
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- }
- }
1.查看Nginx版本:
C:\nginx>nginx -v
2.启动Nginx:
C:\nginx>start nginx
启动Nginx需要占用80端口,常见错误:bind() to 0.0.0.0:8080 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions),需要把系统的80端口关掉,
检查端口:netstat -aon | findstr :80
3.判断Nginx是否启动:
tasklist /fi "imagename eq nginx.exe"
4.停止:
C:\nginx>nginx.exe -s stop
5.重新载入Nginx:
C:\nginx>nginx.exe -s reload
总结
以上所述是小编给大家介绍的Nginx负载均衡配置简单配置方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对PHPERZ网站的支持!
来源: http://www.phperz.com/article/17/0911/345272.html