据我了解,在Zuul代理服务器中使用默认的负载均衡器作为DynamicServerListLoadBalancer,并使用ZoneAffinityServerListFilter规则选择服务器。但是,有什么方法可以自定义zuul代理服务器中使用的负载平衡器吗?
我尝试添加以下配置以更改负载平衡器规则:
eureka.client.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.RoundRobinRule但它似乎仍然坚持默认配置。
任何建议都是非常感谢的。
发布于 2017-06-07 07:42:41
若要随配置更改负载平衡规则,应定义如下所示的带状配置。
your_ribbonclient_name.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.RoundRobinRuleyour_ribbonclient_name应该被适当的配置替换。在Zuul中,色带客户端的名称与每个路径的服务id相同。
您还可以为负载平衡规则提供您自己的IRule bean,如下所示。
@RibbonClient(name = "your_ribbonclient_name", configuration = YourConfigurationClass.class)您可以找到一个示例代码这里
如果您想将您的丝带配置应用到服务器中的整个带状客户端,您可以使用@RibbonClients (而不是@RibbonClient)来实现这一点。
@RibbonClients(defaultConfiguration = DefaultRibbonConfig.class)https://stackoverflow.com/questions/44402621
复制相似问题