上一篇 <<<Nginx使用场景之反向代理
下一篇 >>>Nginx使用场景之跨域解决
负载均衡 通过对集群的节点实现负载均衡,减少单台服务器压力,实现故障转移(重试机制和幂等问题)、健康监测(tcp、http、心跳监测)等。
负载均衡策略
负载均衡、故障转移、失败重试、容错、健康检查等
1、轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2、指定权重 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
3、IP绑定 ip_hash 每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
4、fair(第三方)按后端服务器的响应时间来分配请求,响应时间短的优先分配。
5、url_hash(第三方)按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。
负载均衡示例
###定义上游服务器(需要被nginx真实代理访问的服务器)
upstream backServer{
#a、权重配置
server 127.0.0.1:9091 weight=1;
server 127.0.0.1:9092 weight=2;
#b、iphash
server 127.0.0.1:9091;
server 127.0.0.1:9092;
ip_hash;
}
server {
listen 8888;
server_name localhost;
location / {
#负载均衡分流
proxy_pass http://backServer;
# 配置超时时间才可以自动做故障转移
###nginx与上游服务器(真实访问的服务器)超时时间 后端服务器连接的超时时间_发起握手等候响应超时时间
proxy_connect_timeout 1s;
###nginx发送给上游服务器(真实访问的服务器)超时时间
proxy_send_timeout 1s;
### nginx接受上游服务器(真实访问的服务器)超时时间
proxy_read_timeout 1s;
index index.html index.htm;
}
}
主从服务
upstream backServer{
server 127.0.0.1:9091 ;
#加上backup的时候,指明是从服务器,一旦主服务器挂了之后,就会启用从服务器,主服务器恢复时调用主服务器
server 127.0.0.1:9092 BACKUP;
}
推荐阅读:
<<<DNS域名解析过程
<<<初识Nginx与负载均衡
<<<Nginx使用场景之静态服务器
<<<Nginx使用场景之虚拟主机(动静分离)
<<<Nginx使用场景之反向代理
<<<Nginx使用场景之跨域解决
<<<Nginx使用场景之资源压缩
<<<Nginx使用场景之数据缓存
<<<前后端分离场景通过Nginx调试本地后端接口
<<<Nginx Location指令详解
<<<Nginx全局变量
<<<Nginx导致图片下载失败的原因分析
<<<Nginx+Consul+upSync实现动态负载均衡
<<<Nginx+Lvs+keepAlived实现高可用
<<<Linux环境安装Nginx
<<<Linux环境安装keepAlived
<<<Keepalived虚拟vip功能
<<<Nginx安全防护汇总(转)
网友评论