Nginx之负载均衡
- 负载均衡按照地域划分
- GSLB
- SLB(Nginx就是一个典型的SLB)
- GSLB
- 按照网络模型OSI
- 四层(传输层)负载均衡:对客户端TCP/IP协议的包转发
- 七层(应用层)负载均衡:Http的应用层负载均衡,Nginx就是一个典型的7层负载均衡SLB
- Nginx负载均衡
- 配置语法
upstream backend { server backend1.example.com weight=5; server backend2.example.com:8080; server unix:/tmp/backend3; } server { location / { proxy_pass http://backend; } }
- 机器测试Nginx负载均衡
http { : upstream myproject { : server 127.0.0.1:8000 weight=3; : server 127.0.0.1:8001; : server 127.0.0.1:8002; : server 127.0.0.1:8003; : } : server { : listen 80; : server_name www.domain.com; : location / { : proxy_pass http://myproject; : } : } }
- upstream的常见用法
- 后端服务器在负载均衡调度中的状态
down 当前server暂时不参与负载均衡
backup 预留的备份服务器(当正在使用的后端服务异常时,启动预留服务)
max_fails 允许请求失败的次数
fail_timeout 经过max_fails失败后,服务暂停的时间
max_conns 限制最大的接受的连接数
- 调度算法
杂家不如专家,精益求精