Яка різниця між EnableEurekaClient та EnableDiscoveryClient?


104

У деяких програмах я бачив, що люди використовують EnableEurekaClient. І деякі інші приклади програм використовують EnableDiscoveryClient.

Чи є різниця між цими двома?

Відповіді:


179

Існує кілька реалізацій "Discovery Service" (еврика, консул , зоокер ). @EnableDiscoveryClientживе у весняно-хмаровій частині і збирає реалізацію на класі. @EnableEurekaClientживе у весняному хмарі-netflix і працює лише на eureka. Якщо Юріка стоїть на вашому занятті, вони фактично однакові.


Запитання: Чи дозволять обидві вищезазначені анотації ввімкнути перехоплювач із підтримкою стрічки в RestTemplate? Будь-яка різниця в поведінці? Я помітив, що в попередніх реалізаціях Spring Cloud застосовувався @LoadBalancedавтоматично, але в поточній версії це потрібно явно. Дякую.
fg78nc

1
Так. Різниці немає. Анотація, збалансована навантаженням, потрібна давно.
spencergibb

4
Чому хтось хотів би використовувати @EnableEurekaClient для більш загального @EnableDisocveryClient? Хіба це не пов'язує їх із впровадженням eureka та ускладнить перемикання програмних резервів SD у майбутньому?
Адам Х'юз

3
Так. Єдина відповідь - якщо вони хочуть зрозуміти та застосувати еврику.
spencergibb

3

Концепція служби відкриття у весняній хмарі реалізується різними способами, як Eureka, консул, зоокер та ін. Якщо ви використовуєте Eureka від Netflix, то @EnableEurekaClient спеціально для цього. Але якщо ви використовуєте будь-яке інше відкриття служби, включаючи Eureka, ви можете використовувати @EnableDiscoveryClient.


1

З точки зору його практичності та простоти, якщо зареєстрований центр є eureka, то @EnableEurekaClientрекомендується. Якщо це інший реєстраційний центр, @EnableDiscoveryClientрекомендується.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.