Apa perbedaan antara EnableEurekaClient dan EnableDiscoveryClient?


104

Di beberapa aplikasi, saya melihat orang menggunakan EnableEurekaClient. Dan beberapa aplikasi contoh lainnya menggunakan EnableDiscoveryClient.

Apakah ada perbedaan antara keduanya?

Jawaban:


179

Ada beberapa implementasi dari "Discovery Service" (eureka, consul , zookeeper ). @EnableDiscoveryClienttinggal di spring-cloud-commons dan mengambil implementasinya di classpath. @EnableEurekaClienttinggal di musim semi-cloud-netflix dan hanya bekerja untuk eureka. Jika eureka ada di jalur kelas Anda, mereka secara efektif sama.


Pertanyaan: Akankah kedua anotasi yang disebutkan di atas memungkinkan penyadapan Ribbon-enabled disuntikkan ke RestTemplate? Adakah perbedaan dalam perilaku? Saya perhatikan bahwa dalam implementasi Spring Cloud sebelumnya diterapkan @LoadBalancedsecara otomatis, tetapi dalam versi saat ini, ini diperlukan secara eksplisit. Terima kasih.
fg78nc

1
Iya. Tidak ada perbedaan. Anotasi beban seimbang telah dibutuhkan untuk waktu yang lama.
spencergibb

4
Mengapa seseorang ingin menggunakan @EnableEurekaClient daripada @EnableDisocveryClient yang lebih umum? Bukankah hal itu akan mengikat mereka pada implementasi eureka dan mempersulit peralihan backend SD di masa mendatang?
Adam Hughes

3
Iya. Satu-satunya jawaban adalah jika mereka ingin memperjelas dan menegakkan eureka.
spencergibb

3

Konsep layanan penemuan di cloud musim semi diimplementasikan dengan berbagai cara seperti Eureka, konsul, penjaga kebun binatang, dll. Jika Anda menggunakan Eureka oleh Netflix, maka @EnableEurekaClient khusus untuk itu. Namun jika Anda menggunakan penemuan layanan lain termasuk Eureka, Anda dapat menggunakan @EnableDiscoveryClient.


1

Dari segi kepraktisan dan kesederhanaannya, jika center yang terdaftar adalah eureka, maka @EnableEurekaClientdirekomendasikan. Jika itu adalah pusat pendaftaran lain, @EnableDiscoveryClientdisarankan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.