Spring Cloud Netflix:ribbon.NIWSServerListClassName和ribbon.listOfServers有什么区别?

3

我正在使用带有Eureka的Ribbon。

我的应用程序能够在以下两种配置中调用other-service。第一种配置中我使用NIWSServerListClassName,第二种配置中我使用listOfServers

other-service:
  ribbon:
    eureka:
      enabled: true
    NIWSServerListClassName: com.netflix.niws.loadbalancer.DiscoveryEnabledNIWSServerList
    ServerListRefreshInterval: 1000

.

other-service:
  ribbon:
    eureka:
      enabled: true
    listOfServers: com.netflix.niws.loadbalancer.DiscoveryEnabledNIWSServerList
    ServerListRefreshInterval: 1000

我在spring-cloud-netflix的GitHub问题中(以及某些文档中)看到过NIWSServerListClassNamelistOfServers两个属性都被用于获取ribbon的服务器列表。

这两个ribbon属性有什么区别?它们是否具有相同的目的?

1个回答

3
下面的文档解释了listOfServers是为Ribbon准备的,如果使用Eureka,则会被覆盖。

6.5 使用带Eureka的Ribbon

当在classpath中同时使用Eureka和Ribbon时,ribbonServerList将被覆盖为DiscoveryEnabledNIWSServerList的扩展,该扩展从Eureka中填充服务器列表。

他们接着说,如果不使用Eureka,则可以使用listOfServers:

但是,如果您不想使用Eureka,Ribbon和Feign也可用......您可以按以下方式提供配置 stores:
ribbon: listOfServers: example.com,google.com

From: https://cloud.spring.io/spring-cloud-netflix/multi/multi_spring-cloud-ribbon.html


1
我通过查看 Spring Cloud 文档找到了区别,但没有发布答案。感谢您发布答案,我已经接受了它。 - narendra-choudhary

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接