共计 2128 个字符,预计需要花费 6 分钟才能阅读完成。
如何理解负载均衡统计实现 Nginx 配置,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
负载均衡 == 分身的能力。
既然要有分身的能力嘛,这好办,多弄几台服务器就搞定了。
我们还是先看图比较好:
还是图比较清晰,以下我都用别名称呼:
PA : 负载均衡服务器 /WEB 入口服务器 /www.mydomain.com
P1 : WEB 服务器 / 分身 1 /192.168.2.3
P2 : WEB 服务器 / 分身 2 /192.168.2.4
P3 : WEB 服务器 / 分身 3 /192.168.2.5
PS:首先我们学这个的开始之前吧,不懂防火墙的童鞋们,建议你们把 PA、P1、P2、P3 的防火墙关闭,尽量不要引起不必要的麻烦。
首先:PA、P1、P2、P3 都安装了 Nginx, 不会安装的可以去官网查看教程:http://www.nginx.cn/install(中文版教程、非常的牛 X)
1. 装完之后哈,我们先找到 PA 的 nginx.conf 配置文件:
在 http 段加入以下代码:
upstream servers.mydomain.com {
server 192.168.2.3:80;
server 192.168.2.4:80;
server 192.168.2.5:80;}
当然嘛, 这 servers.mydomain.com 随便取的。
那么 PA 的 server 配置如下:
在 http 段加入以下代码:
server{
listen 80;
server_name www.mydomain.com; location / {
proxy_pass http://servers.mydomain.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; }
}
那么 P1、P2、P3 的配置如下:
server{
listen 80;
server_name www.mydomain.com;
index index.html;
root /data/htdocs/www; }
2. 有人就问了,我用其它端口行不行啊,当然也是可以的,假设 PA 的 nginx.conf 配置文件:
upstream servers2.mydomain.com {
server 192.168.2.3:8080;
server 192.168.2.4:8081;
server 192.168.2.5:8082;}
server{
listen 80;
server_name www.mydomain.com; location / {
proxy_pass http://servers2.mydomain.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; }
}
那么 P1 的配置如下:
server{
listen 8080;
server_name www.mydomain.com;
index index.html;
root /data/htdocs/www; }
P2 配置:
server{
listen 8081;
server_name www.mydomain.com;
index index.html;
root /data/htdocs/www; }
P3 配置:
server{
listen 8082;
server_name www.mydomain.com;
index index.html;
root /data/htdocs/www; }
重启之后,我们访问下,恩不错,确实很厉害。
当我们把一台服务器给关闭了后。
访问网址,还是 OK 的。说明:负载均衡还要懂得修理他(T 出泡妞队营)
3. 那么负载均衡如何保持通话呢?
当然现在有好几种方案,我们这次只是讲一种。
IP 哈希策略
优点:能较好地把同一个客户端的多次请求分配到同一台服务器处理,避免了加权轮询无法适用会话保持的需求。
缺点:当某个时刻来自某个 IP 地址的请求特别多,那么将导致某台后端服务器的压力可能非常大,而其他后端服务器却空闲的不均衡情况。
nginx 的配置也很简单,代码如下:
upstream servers2.mydomain.com {
server 192.168.2.3:8080;
server 192.168.2.4:8081;
server 192.168.2.5:8082; ip_hash;}
关于如何理解负载均衡统计实现 Nginx 配置问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注丸趣 TV 行业资讯频道了解更多相关知识。