EnableEurekaClient 和 EnableDiscoveryClient 有什么区别?
What's the difference between EnableEurekaClient and EnableDiscoveryClient?
在某些应用程序中,我看到人们正在使用 EnableEurekaClient。其他一些示例应用程序正在使用 EnableDiscoveryClient。
这两个有什么区别吗?
"Discovery Service"(eureka、consul, zookeeper). @EnableDiscoveryClient
lives in spring-cloud-commons and picks the implementation on the classpath. @EnableEurekaClient
lives in spring-cloud-netflix 有多种实现,并且仅适用于 eureka。如果 eureka 在您的类路径中,它们实际上是相同的。
spring 云中的发现服务概念以不同的方式实现,例如 Eureka、consul、zookeeper 等。如果您使用 Netflix 的 Eureka,那么 @EnableEurekaClient 专门用于此。但是,如果您使用任何其他服务发现,包括 Eureka,您可以使用 @EnableDiscoveryClient。
从实用性和简洁性来说,如果注册中心是eureka,那么推荐@EnableEurekaClient
。如果是其他注册中心,建议@EnableDiscoveryClient
@EnableEurekaClient 仅适用于 Eureka 如果我们使用 @EnableDiscoveryClient 我们可以使用除 Eureka 之外的任何发现客户端,例如 Consul
@EnableEurekaCient 将使用 eureka 服务器启动服务发现,就像明确指定使用 EUREKA
@EnableDiscovery Client 将使用类路径中可用的 jar 注册发现服务,例如 consul、Eureka、Kubernetes。
在某些应用程序中,我看到人们正在使用 EnableEurekaClient。其他一些示例应用程序正在使用 EnableDiscoveryClient。
这两个有什么区别吗?
"Discovery Service"(eureka、consul, zookeeper). @EnableDiscoveryClient
lives in spring-cloud-commons and picks the implementation on the classpath. @EnableEurekaClient
lives in spring-cloud-netflix 有多种实现,并且仅适用于 eureka。如果 eureka 在您的类路径中,它们实际上是相同的。
spring 云中的发现服务概念以不同的方式实现,例如 Eureka、consul、zookeeper 等。如果您使用 Netflix 的 Eureka,那么 @EnableEurekaClient 专门用于此。但是,如果您使用任何其他服务发现,包括 Eureka,您可以使用 @EnableDiscoveryClient。
从实用性和简洁性来说,如果注册中心是eureka,那么推荐@EnableEurekaClient
。如果是其他注册中心,建议@EnableDiscoveryClient
@EnableEurekaClient 仅适用于 Eureka 如果我们使用 @EnableDiscoveryClient 我们可以使用除 Eureka 之外的任何发现客户端,例如 Consul
@EnableEurekaCient 将使用 eureka 服务器启动服务发现,就像明确指定使用 EUREKA
@EnableDiscovery Client 将使用类路径中可用的 jar 注册发现服务,例如 consul、Eureka、Kubernetes。