编程笔记

lifelong learning & practice makes perfect

load balance

定义

对流量进行按需分发的服务,通过将流量分发到不同的后端服务来扩展应用系统的

服务吞吐能力,并且可以消除系统中的单点故障,提升应用系统的可用性。
主要为HTTP/HTTPS/TCP/UDP/QUICk几种类型的请求设置转发规则。

负载均衡算法

  1. 轮询(Round Robin):第一个请求选择列表中的第一个服务器,按顺序移动列表直到结尾,循环。
  2. 最小连接(Least Connections):优先选择连接数最少的服务器
  3. 请求来源(Source):根据请求源的 IP 的散列(hash)来选择要转发的服务器。

    7层负载均衡与4层负载均衡

    4层

    4层 LB 主要是通过报文中的目的地址和端口,再加上负载均衡设备设置的服务器
    选择方式,决定最终选择的内部服务器。负载能力实现主要基于数据包的传输层信息
    ( ip + port )进行负载转发。
  • 基于域名或URL转发

    7层

    7层 LB 也称为“内容交换”,主要通过报文中真正有意义的应用层内容(证书,
    cookies,http头部信息),会在负载均衡设备上进行证书校验,三次握手等操作,再
    加上负载均衡设备设置的服务器选择方式,决定最终的内服务器。负载能力实现主要基
    于应数据包应用层信息( domain+port+url 等)进行负载转发。
  • 基于内容的路由
  • HTTP标头改写、重定向、重写、限速等

参考

欢迎关注我的其它发布渠道