Spring Cloud Loadbalancer 可以与 Netflix Eureka 一起使用,而不是与 Netflix Ribbon 一起使用吗?
Can Spring Cloud Loadbalancer be used together with Netflix Eureka instead of Netflix Ribbon?
从 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?
我试图找到描述如何执行此操作的文档 and/or 示例,但我没有找到。
您可以在 Spring Cloud Loadbalancer 的测试中找到示例。
因此,您需要做的是以下内容。您必须使用 @LoadBalancerClient
注释配置 class(如果您想要多个客户端,则将其包装在 @LoadBalancerClients
中),您可以在其中指定客户端的名称及其配置 class.
在该负载均衡器客户端的配置 class 中,您需要创建一个将 return 负载均衡器的 bean。在测试中它是RoundRobinLoadBalancer
。
然后,您可以使用该负载平衡器 bean 来选择下一个服务实例,该实例又可用于调用您的其他服务。
从 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?
我试图找到描述如何执行此操作的文档 and/or 示例,但我没有找到。
您可以在 Spring Cloud Loadbalancer 的测试中找到示例。
因此,您需要做的是以下内容。您必须使用 @LoadBalancerClient
注释配置 class(如果您想要多个客户端,则将其包装在 @LoadBalancerClients
中),您可以在其中指定客户端的名称及其配置 class.
在该负载均衡器客户端的配置 class 中,您需要创建一个将 return 负载均衡器的 bean。在测试中它是RoundRobinLoadBalancer
。
然后,您可以使用该负载平衡器 bean 来选择下一个服务实例,该实例又可用于调用您的其他服务。