我对使用Spring-Cloud Netflix进行客户端负载平衡有疑问。
启用负载平衡后,功能区将选择要调用的服务器。选择规则取决于所选择的IRule实现。
以下实施之间有什么区别:
AvailabilityFilteringRule
BestAvailableRule
ClientConfigEnabledRoundRobinRule
RoundRobinRule
WeightedResponseTimeRule
ZoneAvoidanceRule
非常感谢
答案 0 :(得分:1)
visit source,以获取更多信息和不同的规则。
RoundRobinRule 该规则仅通过循环选择服务器。它通常用作默认规则或更高级规则的后备。
BestAvailableRule 跳过带有“跳闸”断路器的服务器并选择 并发请求最少的服务器。
AvailabilityFilteringRule 该规则将跳过被认为“电路跳闸”或并发连接计数较高的服务器。
WeightedResponseTimeRule 对于此规则,将根据其平均响应时间为每个服务器赋予权重。响应时间越长,重量就越少。该规则会随机选择一台服务器,可能性取决于服务器的权重。
选择一个使用属性
service-id:
ribbon:
NFLoadBalancerRuleClassName: com.netflix.loadbalancer.AvailabilityFilteringRule