Spring Cloud Loadbalancer可以与Netflix Eureka一起使用而不是Netflix Ribbon吗?

时间:2019-02-25 20:40:02

标签: spring-cloud spring-cloud-netflix

从Spring Cloud Greenwich版本的公告中,请参阅https://spring.io/blog/2019/01/23/spring-cloud-greenwich-release-is-now-available,我注意到建议使用Spring Cloud Loadbalancer替换Netflix Ribbon。

这是否意味着客户端可以使用Spring Cloud Loadbalancer连接到在Netflix Eureka中注册的服务,而无需使用Netflix Ribbon?

我尝试查找描述该操作方法的文档和/或示例,但没有找到任何内容。

1 个答案:

答案 0 :(得分:0)

您可以在Spring Cloud Loadbalancer的测试中找到一个样本。 因此,您需要执行以下操作。您必须使用@LoadBalancerClient注释配置类(如果要拥有多个客户端,则将其包装在@LoadBalancerClients中),在其中指定客户端的名称及其配置类。 在该负载平衡器客户端的config类中,您需要创建一个将返回负载平衡器的bean。在测试中,它是RoundRobinLoadBalancer。 然后,您可以使用该负载平衡器bean来选择下一个服务实例,而该实例又可以用来调用您的其他服务。

查看此测试:https://github.com/spring-cloud/spring-cloud-commons/blob/master/spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/core/LoadBalancerTest.java#L132