@EnableDiscoveryClient与@EnableEurekaClient 区别

spring cloud服务发现注解之@EnableDiscoveryClient与@EnableEurekaClient

在之前的一篇文章Spring Cloud feign使用中在使用服务发现的时候提到了两种注解,一种为@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.
  • 1

原文地址为: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


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

 
  1.  
  2. /**

  3. * Convenience annotation for clients to enable Eureka discovery configuration

  4. * (specifically). Use this (optionally) in case you want discovery and know for sure that

  5. * it is Eureka you want. All it does is turn on discovery and let the autoconfiguration

  6. * find the eureka classes if they are available (i.e. you need Eureka on the classpath as

  7. * well).

  8. *

  9. * @author Dave Syer

  10. * @author Spencer Gibb

  11. */

  12. @Target(ElementType.TYPE)

  13. @Retention(RetentionPolicy.RUNTIME)

  14. @Documented

  15. @Inherited

  16. @EnableDiscoveryClient

  17. public @interface EnableEurekaClient {

  18.  
  19. }

注解@EnableEurekaClient上有@EnableDiscoveryClient注解,可以说基本就是EnableEurekaClient有@EnableDiscoveryClient的功能,另外上面的注释中提到,其实**@EnableEurekaClient**z注解就是一种方便使用eureka的注解而已,可以说使用其他的注册中心后,都可以使用@EnableDiscoveryClient注解,但是使用@EnableEurekaClient的情景,就是在服务采用eureka作为注册中心的时候,使用场景较为单一。

@EnableDiscoveryClient就不再多讲了,上面基本已经讲述得差不多了。

原本准备在这一篇文章中同时讲下@EnableEurekaClient的源码以及工作原理,但是发现篇幅过长,所以这一篇就只讲这两个注解的不同,下一篇再讲@EnableEurekaClient的源码以及实现等等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值