SpringCloudBalancer配置静态服务器列表
我们正在一步一步地远离春季云网飞OSS生态系统。目前,我们正在实施SpringCloudLoadBalancer并删除Ribbon。 然而,在我们的集成测试中,我们曾经有很多静态服务,现在随着从ribbon向SpringCloudLoadBalancer的转变,这些属性不再被接受。 i、 e: 我们已通过以下方式迁移到使用spring cloud loadbalancerSpringCloudBalancer配置静态服务器列表,spring,spring-cloud,spring-webflux,spring-webclient,Spring,Spring Cloud,Spring Webflux,Spring Webclient,我们正在一步一步地远离春季云网飞OSS生态系统。目前,我们正在实施SpringCloudLoadBalancer并删除Ribbon。 然而,在我们的集成测试中,我们曾经有很多静态服务,现在随着从ribbon向SpringCloudLoadBalancer的转变,这些属性不再被接受。 i、 e: 我们已通过以下方式迁移到使用spring cloud loadbalancer 首先,我们用@LoadBalanced注释我们的Webclient.Builder,如下所示 @Bean @LoadBala
首先,我们用@LoadBalanced注释我们的Webclient.Builder,如下所示
@Bean
@LoadBalanced
fun webClientBuilder() = WebClient.builder()
@LoadBalancerClient(name = "foo-service", configuration = [FooServiceConfiguration::class])
class FooServiceClient(private val basicAuthWebClient: WebClient)
然后我们在客户端类上添加了@LoadBalancerClient注释,如下所示
@Bean
@LoadBalanced
fun webClientBuilder() = WebClient.builder()
@LoadBalancerClient(name = "foo-service", configuration = [FooServiceConfiguration::class])
class FooServiceClient(private val basicAuthWebClient: WebClient)
这导致我们的测试失败,因为foo服务存在未知的hostException
现在我的问题是,我们如何在新的spring cloud loadbalancer中配置这个静态服务器列表?根据@Spencergib的评论,我想类似的东西应该可以工作:
spring:
cloud:
discovery:
client:
simple:
instances:
foo-service:
- instanceId: foo1
serviceId: foo-service
host: localhost
port: 9876```
功能区属性不适用于spring cloud loadbalancer。您可以使用
spring.cloud.discovery.client.simple.*
properties。看见