使用功能区,如果要为特定服务使用自定义ServerList
实现而不是默认ConfigurationBasedServerList
,则可以在应用程序配置文件中执行此操作:
my-service:
ribbon:
NIWSServerListClassName: com.myapp.MyCustomServerList
我的问题是,我想替换我声明使用ConfigurationBasedServerList
的所有服务的默认MyCustomServerList
。
我可以为每个服务添加以前的属性块,但这可能会无休止地增长。
有没有办法将MyCustomServerList
声明为默认值?
我也尝试将此bean添加到我的@Configuration
类中,但它似乎只在我第一次提出请求时才起作用:
@Bean
public ServerList<Server> ribbonServerList() {
return new MyCustomServerList();
}
答案 0 :(得分:1)
请参阅http://cloud.spring.io/spring-cloud-static/Dalston.SR1/#_customizing_the_ribbon_client
@RibbonClients(defaultConfiguration=MyConfig.class)
//...
class MyConfig {
@Bean
public ServerList<Server> ribbonServerList() {
return new MyCustomServerList();
}
}