zoukankan      html  css  js  c++  java
  • 高可用与负载均衡(3)之七层负载均衡的概念

    preface

    在蓝厂上班不但接触LVS四层均衡负载,也天天捣鼓haproxy对七层负载。七层负载均衡其实也称为内容交换,指LB分析应用层的请求数据特征,匹配相关规则后,运算某个算法后再进行调度。

    七层负载均衡时序图

    在七层负载均衡中,调度器或者调度软件通过请求方法,请求的uri,请求的Host等作为调度的依据,结合后端服务器的压力,进行转发。
    时序图如图所示:

    通过上图可得出七层负载的特点是:

    1. 模型复杂
      负载均衡器需要关心业务逻辑并且正确解析TCP数据,根据请求数据的特征,如果HTTP的主机头或者URI等信息,作为调度依据。
    2. 吞吐量小
      因为模型复杂,所以CPU处理复杂,相对于4层负载均衡来说,提供的吞吐量较小。
    3. 对后端服务器精细控制
      因为LB能够解析到应用层的特征,所以能够对客户端的请求更加合理的控制,提高后端的执行效率。比如针对域名,目录结构等。

    七层负载应用场景概括起来就以下2种:

    1. 后端服务器应用的通信协议比较开放,业务逻辑比较容易实现,有成熟的开源或者商业方案。
    2. 需要提供后端服务器的计算效率。如果后端是缓存服务器,如内容缓存Memcache,http缓存squid等,基于请求的key,url等进行调度。可以提高后端服务器的执行效率,增加命中率。
  • 相关阅读:
    C语言和python分别计算文件的md5值
    C语言计算文件大小
    Linux内核源码下载
    Linux系统编程20_VFS虚拟文件系统
    Linux系统编程19_标准I/O
    C语言Review5_函数指针和数组指针
    C语言Review4_头文件引用符号的区别
    PDO之MySql持久化自动重连导致内存溢出
    小程序之app.json not found
    phpstorm之"Can not run PHP Code Sniffer"
  • 原文地址:https://www.cnblogs.com/liaojiafa/p/6059225.html
Copyright © 2011-2022 走看看