MST

星途 面试题库

面试题:微服务架构下跨地域微服务负载均衡的常见算法有哪些及原理

在微服务架构中,针对跨地域的微服务负载均衡场景,请列举至少三种常见的负载均衡算法,并简要阐述它们的工作原理。
39.0万 热度难度
后端开发微服务架构

知识考点

AI 面试

面试题答案

一键面试
  • 轮询(Round Robin): 按顺序依次将请求分配到各个微服务实例。例如有三个微服务实例A、B、C,第一个请求分配给A,第二个给B,第三个给C,第四个又回到A,如此循环。这种算法简单,能平均分配请求,但未考虑实例性能差异。
  • 加权轮询(Weighted Round Robin): 为每个微服务实例分配一个权重值,权重越高,被分配到请求的概率越大。比如实例A权重为2,实例B权重为1,请求分配顺序可能为A、A、B,以此类推。它考虑了不同实例的处理能力差异,处理能力强的实例可分配更多请求。
  • 随机(Random): 每次从所有可用的微服务实例中随机选择一个来处理请求。这种算法简单,在实例数量足够多的情况下,能近似实现负载均衡,但可能出现某个实例短时间内多次被选中,而部分实例长时间未被选中的情况。
  • 最小连接数(Least Connections): 优先将请求分配到当前连接数最少的微服务实例。它认为连接数少的实例处理能力相对空闲,能更好地处理新请求,适用于每个请求处理时间差异较大的场景,可避免将新请求分配到已经处理大量请求、负载较高的实例上。