@EnableDiscoveryClient與@EnableEurekaClient區別
阿新 • • 發佈:2018-11-02
1,@EnableDiscoveryClient
註解是基於spring-cloud-commons
依賴,並且在classpath中實現;
2,@EnableEurekaClient
註解是基於spring-cloud-netflix
依賴,只能為eureka作用;
其實用更簡單的話來說,就是如果選用的註冊中心是eureka,那麼就推薦@EnableEurekaClient,如果是其他的註冊中心,那麼推薦使用@EnableDiscoveryClient。
下文是從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.
@EnableDiscoveryClient
@EnableEurekaClient
註解@EnableEurekaClient上有@EnableDiscoveryClient註解,
可以說基本就是EnableEurekaClient有@EnableDiscoveryClient的功能,
另外上面的註釋中提到,其實@EnableEurekaClient註解就是一種方便使用eureka的註解而已,
可以說使用其他的註冊中心後,都可以使用@EnableDiscoveryClient註解,
但是使用@EnableEurekaClient的情景,就是在服務採用eureka作為註冊中心的時候,使用場景較為單一。