MST

星途 面试题库

面试题:微服务架构下基于Spring Cloud的常见负载均衡策略有哪些及原理

在基于Spring Cloud的微服务架构中,负载均衡是保障系统高可用和性能的关键。请阐述常见的负载均衡策略,例如Round Robin、Random等,并简要说明它们的工作原理。
25.6万 热度难度
后端开发微服务架构

知识考点

AI 面试

面试题答案

一键面试

Round Robin(轮询)

  • 工作原理:按照顺序依次将请求分配到各个服务器上。假设服务器列表为 [A, B, C],当有请求到来时,第一个请求分配到 A,第二个请求分配到 B,第三个请求分配到 C,第四个请求又回到 A,如此循环。这种策略实现简单,不考虑服务器的性能差异,平均分配请求,适用于服务器性能相近的场景。

Random(随机)

  • 工作原理:从服务器列表中随机选择一台服务器来处理请求。每次请求到来时,通过随机算法在所有可用服务器中随机挑选一台。这种策略简单且在请求量足够大时能大致实现负载均衡,但可能会出现某些服务器长时间未被选中的情况。

Weighted Round Robin(加权轮询)

  • 工作原理:为每个服务器分配一个权重值,权重代表服务器的处理能力。权重越高,被分配到请求的概率越大。例如,服务器 A 权重为2,服务器 B 权重为1,在轮询时,每3个请求中,A 会被分配到2次,B 会被分配到1次。这种策略考虑了服务器性能差异,能更好地利用高性能服务器资源。

Weighted Random(加权随机)

  • 工作原理:结合随机和权重的思想。根据每个服务器的权重,按照权重比例随机选择服务器。例如,服务器 A 权重为3,服务器 B 权重为1,随机选择时,A 被选中的概率是 B 的3倍。这样既具有随机性,又能根据服务器性能合理分配请求。

Least Connections(最少连接)

  • 工作原理:优先将请求分配给当前连接数最少的服务器。系统会实时统计每个服务器的连接数,当新请求到来时,将请求发送到连接数最少的服务器上。这种策略适用于处理长连接的场景,能保证每个服务器的负载相对均衡,避免某个服务器因连接过多而性能下降。