栈 · spring cloud -> Eureka 服务注册与发现 · @EnableDiscoveryClient 与 @EnableEurekaClient 区别

本文解析了Spring Cloud中@EnableEurekaClient与@EnableDiscoveryClient的区别。前者专为Eureka设计,后者更通用,适用于多种注册中心如Consul、Zookeeper等。当选择Eureka作为服务注册中心时,推荐使用@EnableEurekaClient。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文来自其他文章

使用服务发现的时候提到了两种注解,一种为 @EnableDiscoveryClient,一种为 @EnableEurekaClient,用法上基本一致,今天就来讲下两者,下文是从stackoverflow上面找到的对这两者的解释:

There are multiple implementations of "Discovery Service" (eureka, consul, zookeeper).
@EnableDiscoveryClient lives in spring-cloud-commons and picks the implementation on the classpath.  
@EnableEurekaClient lives in spring-cloud-netflix and only works for eureka. If eureka is on your classpath, they are effectively the same.

原文来自 : What’s the difference between EnableEurekaClient and EnableDiscoveryClient?

意思也就是 spring cloud中discovery service 有许多种实现(eureka、consul、zookeeper等等),

@EnableDiscoveryClient 基于 spring-cloud-commons

@EnableEurekaClient 基于 spring-cloud-netflix

其实用更简单的话来说,就是如果选用的注册中心是 eureka,那么就推荐@EnableEurekaClient,如果是其他的注册中心,那么推荐使用@EnableDiscoveryClient。

注解@EnableEurekaClient上 有 @EnableDiscoveryClient注解,可以说基本就是 @EnableEurekaClient 有 @EnableDiscoveryClient的功能,

另外上面的注释中提到,其实**@EnableEurekaClient**z注解就是一种方便使用eureka的注解而已,可以说使用其他的注册中心后,

都可以使用@EnableDiscoveryClient注解,但是使用@EnableEurekaClient的情景,就是在服务采用eureka作为注册中心的时候,使用场景较为单一。

@EnableEurekaClient

我们具体的对@EnableEurekaClient的源码看一下,如下:

/**
* Convenience annotation for clients to enable Eureka discovery configuration
* (specifically). Use this (optionally) in case you want discovery and know for sure that
* it is Eureka you want. All it does is turn on discovery and let the autoconfiguration
* find the eureka classes if they are available (i.e. you need Eureka on the classpath as
* well).
*
* @author Dave Syer
* @author Spencer Gibb
*/
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@EnableDiscoveryClient
public @interface EnableEurekaClient {

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值