0
关键词
1、Nginx 的负载均衡主要是由 Upstream 模块完成的
2、支持下面负载均衡算法
轮询
加权轮询
ip_hash
URL_hash
3、可以对后端服务器进行健康检查。
4、指定权重
## 定义一个名为 www_server_pool 的后端服务器池
server 127.0.0.1:8080 weight=1 max_fails=2 fail_timeout=30s;
server 127.0.0.1:8081 weight=2 max_fails=2 fail_timeout=30s;
server 127.0.0.1:8082 weight=3 max_fails=2 fail_timeout=30s;
## 这里采用按权轮询的调度算法,权重值越高,分配到的请求越多,不设置默认为 1
## max_fails 在 fail_timeout 时间内对后端服务器请求失败的次数
## fail_timeout 在经历失败次数后,暂停的时间
5、session共享
## 调度算法为 ip_hash ,可以有效的解决 session 保持的问题(尽量在后端实现 session 共享)
upstream bbs_server_pool {
ip_hash;
6、down标记宕机机器
## 当某一台后端服务器无法提供服务时,不要注释或者删除,要用 down 标记来指明
server 192.168.1.80:8080;
server 192.168.1.80:8081;
server 192.168.1.80:8082 down;
7、ip_hash的坏处,服务器宕机,nginx依然会把请求发到宕机那台机,除非用轮询才会转发到别的机器或者用down标记那个宕机机器
# 正常情况下是由 tomcat3 来应答的,当 tomcat3 死掉后
upstream bbs_server_pool {
ip_hash;
server 192.168.1.80:8080;
server 192.168.1.80:8081;
server 192.168.1.80:8082 down;
}
1、Nginx 的负载均衡主要是由 Upstream 模块完成的
2、支持下面负载均衡算法
轮询
加权轮询
ip_hash
URL_hash
3、可以对后端服务器进行健康检查。
4、指定权重
## 定义一个名为 www_server_pool 的后端服务器池
server 127.0.0.1:8080 weight=1 max_fails=2 fail_timeout=30s;
server 127.0.0.1:8081 weight=2 max_fails=2 fail_timeout=30s;
server 127.0.0.1:8082 weight=3 max_fails=2 fail_timeout=30s;
## 这里采用按权轮询的调度算法,权重值越高,分配到的请求越多,不设置默认为 1
## max_fails 在 fail_timeout 时间内对后端服务器请求失败的次数
## fail_timeout 在经历失败次数后,暂停的时间
5、session共享
## 调度算法为 ip_hash ,可以有效的解决 session 保持的问题(尽量在后端实现 session 共享)
upstream bbs_server_pool {
ip_hash;
6、down标记宕机机器
## 当某一台后端服务器无法提供服务时,不要注释或者删除,要用 down 标记来指明
server 192.168.1.80:8080;
server 192.168.1.80:8081;
server 192.168.1.80:8082 down;
7、ip_hash的坏处,服务器宕机,nginx依然会把请求发到宕机那台机,除非用轮询才会转发到别的机器或者用down标记那个宕机机器
# 正常情况下是由 tomcat3 来应答的,当 tomcat3 死掉后
upstream bbs_server_pool {
ip_hash;
server 192.168.1.80:8080;
server 192.168.1.80:8081;
server 192.168.1.80:8082 down;
}
编辑回复