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

Posted

技术标签:

【中文标题】Spring Cloud Netflix:ribbon.NIWSServerListClassName 和ribbon.listOfServers 有啥区别?【英文标题】:Spring Cloud Netflix: What is the difference between ribbon.NIWSServerListClassName and ribbon.listOfServers?Spring Cloud Netflix:ribbon.NIWSServerListClassName 和ribbon.listOfServers 有什么区别? 【发布时间】:2018-10-16 21:11:45 【问题描述】:

我将 Ribbon 与 Eureka 一起使用。

我的应用程序可以在以下两种配置中调用 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

我已经看到 NIWSServerListClassNamelistOfServers 在 spring-cloud-netflix GitHub 问题(以及在文档中的某些地方)用于获取功能区的服务器列表。

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

【问题讨论】:

【参考方案1】:

下面的文档解释了 listOfServers 用于 Ribbon,如果使用 Eureka,则会被覆盖。

6.5 在 Eureka 中使用 Ribbon

当 Eureka 与 Ribbon 结合使用时(即两者都开启 类路径),ribbonServerList 被扩展覆盖 DiscoveryEnabledNIWSServerList,填充服务器列表 来自尤里卡。

他们接着说,当不使用 Eureka 时,你可以使用 listOfServers:

但是,如果您不想使用 Eureka,也可以使用 Ribbon 和 Feign 工作.....您可以提供如下商店的配置: 丝带: listOfServers:example.com,google.com

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

【讨论】:

我能够使用 spring-cloud 文档找出差异,但没有发布答案。感谢您发布答案,我已接受。

以上是关于Spring Cloud Netflix:ribbon.NIWSServerListClassName 和ribbon.listOfServers 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 spring-cloud-netflix 和 feign 编写集成测试

Spring Cloud 整合 netflix 依赖配置

Spring Cloud Netflix—使用EurekaClient

Spring Cloud Netflix(网飞)

`spring-cloud-starter-eureka-server`和`spring-cloud-starter-netflix-eureka-server`之间的区别

Netflix之后,如何用Spring Cloud 新组件构建微服务架构?