第一次尝试Spring Cloud Gateway。使用 2 个服务 serviceA 和 serviceB(每个都有 2 个实例)配置了一个简单的发现客户端。
我的目标是为每个服务配置 2 种不同类型的负载均衡器(服务 A 的 RandomLoadBalancer 和服务 B 的 RoundRobinLoadBalancer)。我遇到的问题是 LoadBalancerClientFactory (由过滤器用于为 lb://* url 找到正确的负载均衡器)和 DiscoveryClientServiceInstanceListSupplier 似乎都在查看loadbalancer.client.name属性以找到服务的正确负载均衡器。
因此,如果我有loadbalancer.client.name=serviceA它将仅适用于访问服务 A 的 URL。我是否使用了正确的方法,或者网关是否打算与单个负载均衡器配置一起使用?我的意思是我可以编写自己的 ClientFactory 和 ListSuppliers 实现,但只是想看看我是否遗漏了什么。