从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?
我试图找到描述如何做到这一点的文档和/或示例,但我还没有找到。
您可以在Spring Cloud Loadbalancer的测试中找到一个示例。所以你需要做的是以下几点。您必须使用@LoadBalancerClient
注释配置类(如果您想拥有多个客户端,则将其包装在@LoadBalancerClients
中),您可以在其中指定客户端的名称及其配置类。在该负载均衡器客户端的配置类中,您需要创建一个将返回负载均衡器的bean。在测试中它是RoundRobinLoadBalancer
。然后,您可以使用该负载均衡器Bean来选择下一个服务实例,该服务实例又可用于调用其他服务。