EnableEurekaClient 和 EnableDiscover yClient 有什么区别?

在一些应用程序中,我看到人们正在使用 EnableEurekaClient。

这两者之间有什么区别吗?

60261 次浏览

有多种“发现服务”(eureka,执政官动物园管理员)的实现。@EnableDiscoveryClient位于 春-云-公地中,并在类路径上选择实现。@EnableEurekaClient住在 Spring-Cloud-netflix,只为尤里卡工作。如果 Eureka 在您的类路径上,那么它们实际上是相同的。

春季云中的发现服务概念可以通过 Eureka、领事、动物园管理员等多种方式实现。如果你是通过 Netflix 使用 Eureka,那么@EnableEurekaClient 就是专门为此服务的。但是如果您正在使用包括 Eureka 在内的任何其他服务发现,则可以使用@EnableDiscover yClient。

考虑到它的实用性和简单性,如果注册中心是尤里卡,那么 @EnableEurekaClient是推荐的。如果是另一个注册中心,建议使用 @EnableDiscoveryClient

@ EnableEurekaClient 只为 Eureka 工作,如果我们使用@EnableDiscover yClient 我们可以使用除 Eureka 之外的任何发现客户端,比如领事

@ EnableEurekaCient 将使用 EUREKA 服务器初始化服务发现,类似于显式指定使用 EUREKA

而@EnableDiscovery 客户端将使用类路径中可用的 jar 注册发现服务,比如 consul、 Eureka、 Kubernetes。