负载均衡策略有以下几种:
请求轮询:round-robin,是默认策略,应用服务器的请求以循环方式分发,可以设置权重weight,默认权重均为1,因此每台后端服务器接受的请求数相同。
最少连接:least-connected,当某些请求占用比较长的时间时,此策略相对更公平。nginx尽量不让繁忙的应用服务器负载过多的请求,而是将新请求分发给那些不繁忙的服务器。
会话保持:ip-hash,客户端的IP地址用作散列键,以确定应该为客户端的请求选择服务器组中的哪一台服务器,此方法确保来自同一客户端的请求将始终指向相同的服务器,除非此服务器不可用。
nginx中的反向代理实现包括服务器健康检查。如果某个特定服务器的响应失败,nginx会将此服务器标记为失败,并将尝试避免在随后的入站请求中选择此服务器。
 
请求轮询权重配置示例,大概每6个请求将会分配1个到srv1,2个到srv2,3个到srv3:
http {
upstream myapp1 {
server srv1.example.com weight=1;
server srv2.example.com weight=2;
server srv3.example.com weight=3;
}
 
server {
listen 80;
location / {
proxy_pass http://myapp1;
}
}
 
其他策略配置示例:
http {
upstream myapp1 {
least-connected或者ip-hash
server srv1.example.com;
server srv2.example.com;
server srv3.example.com;
}
 
server {
listen 80;
location / {
proxy_pass http://myapp1;
}
}

最新文章

  1. GDI学习之俄罗斯方块
  2. 【云计算】基于Ansible的自动部署平台化思路
  3. MySQL安装图文教程
  4. APM 终端用户体验监控分析(上)
  5. 如何正确学习JavaScript
  6. 【Spark2.0源码学习】-9.Job提交与Task的拆分
  7. jquery中的ajax方法参数
  8. 如何将代码提交到git上
  9. SSM项目目录结构
  10. Leetcode 1. Two Sum (Python)
  11. 高级组件——选项卡面板JTabbedPane
  12. MySQL(3)-MySQL Workbench
  13. 【Selenium】selenium中隐藏元素如何定位?
  14. 【Java】解析JScrollPane类的使用
  15. elk单台环境搭建
  16. Fig 7.2.4 & Fig 7.3.2
  17. Codeforces Round #353 (Div. 2) A. Infinite Sequence 水题
  18. 最简单,有效的学习mysql教程(一)
  19. python+selenium实现自动抢票
  20. HDU 6103

热门文章

  1. 【独家】React Native 版本升级指南
  2. PHP学习中的一些总结(持续更新)
  3. idea如何安装插件
  4. UnitTest单元测试框架解析【实用篇】
  5. RabbitMQ配置文件(rabbitmq.conf)
  6. 理解Word2Vec
  7. 解放生产力:Spring Boot的注解校验
  8. springboot入门遇到Whitelabel Error Page错误
  9. [Oracle/Sql] Decode与Case
  10. odoo10同一模型的不同视图不同群组权限控制