Architecture(四)负载均衡

栏目: 后端 · 发布时间: 7年前

引言

  • 本文介绍几种负载均衡架构及算法。

总体策略

  • DNS负载均衡用于实现地理级别的负载均衡;
  • 硬件负载均衡用于实现集群级别的负载均衡;
  • 软件负载均衡用于实现机器级别的负载均衡;

Architecture(四)负载均衡

硬件负载均衡

  • 类似路由器、交换机;
  • 优点:
    • 支持各种负载均衡算法;
    • 支持100万并发(一般软件负载均衡也就支持10万并发);
    • 很多设备同时支持负载均衡、防火墙、防DDOS攻击功能;
  • 缺点:
    • 价格高昂;

软件负载均衡

  • 优点:
    • 便宜;
    • 维护和部署简单(安装Ngnix软件即可);
  • 缺点:
    • 并发量远小于硬件负载均衡,Linux服务器上装一个Nginx大概能到5万每秒;
    • 一般不具备防火墙、防DDOS攻击等功能;

Architecture(四)负载均衡

DNS负载均衡

  • 实现地理级别的负载均衡;
  • DNS服务器将域名解析为最靠近用户的主机的IP地址,提升访问速度;
  • 缺点:
    • DNS缓存不能及时更新,有可能定位到一个已经移走的主机;
    • 除了映射IP地址,没有提供其他的负载均衡算法和策略;

Architecture(四)负载均衡

均衡算法

  • 轮询:
    • 负载均衡系统收到请求后,按照顺序轮流分配到服务器上;
    • 算法简单,没有考虑机器的状态;
  • 加权轮询:
    • 分给32核机器的概率是分给16核机器的概率的两倍;
    • 考虑了机器性能,但无法根据机器状态动态调整;
  • 负载最低优先:
    • 根据及其具体状态决定负载均衡策略;
    • 考虑:机器连接数、机器的HTTP连接数、CPU占用率、IO占用率;
  • 性能最佳优先:
    • 根据及其具体状态决定负载均衡策略;
    • 考虑:服务器响应时间;
  • Hash:
    • 对源IP地址hash决定任务分配到哪台服务器;
    • 对session ID进行hash决定任务分配到哪台服务器,可以保证同一个会话的包都发送到同一台服务器处理;

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

工程问题C++语言求解

工程问题C++语言求解

Delores M.Etter、Jeanine A.Ingber / 冯力、周凯 / 机械工业出版社 / 2014-8 / 79元

本书介绍了如何利用ANSIC++编程语言以基于对象的编程方式来解决工程问题。书中引用了大量来自于不同工程、科学和计算机科学领域的示例,是一本理论和实践结合紧密的教材。针对C++基本语法的各个部分,由浅入深地进行讲解。每讲解一部分基础知识,同时会结合多个相关实例,实例内容详实,紧贴所讲内容,使读者能够立刻对所学知识进行练习,实战性强。一起来看看 《工程问题C++语言求解》 这本书的介绍吧!

html转js在线工具
html转js在线工具

html转js在线工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具