Spring Cloud Load Balancer - 通过 Java 自定义负载均衡器客户端配置

问题描述

通过使用“LoadBalancerClient”和“LoadBalancerClients”注释可以为负载均衡服务指定自定义配置,如下所示。

https://docs.spring.io/spring-cloud-commons/docs/current/reference/html/#custom-loadbalancer-configuration

我们如何通过Java指定相同的配置?我们有一个服务可以动态增加的情况,我们不想继续修改代码添加它们。除了服务实例之外,它们的负载均衡器配置将保持相似。我们希望添加一个通用的自定义配置,然后可以根据服务名称返回供应商列表。

解决方法

声明一个类型为 LoadBalancerClientFactory 的 bean 包含所有适用的 LoadBalancerClientSpecification 的列表。 非常简单,但必须四处寻找才能确定要公开哪个 bean,因为我找不到任何示例。