EnableEurekaClient และ EnableDiscoveryClient แตกต่างกันอย่างไร


108

ในบางแอปพลิเคชันฉันเห็นผู้คนกำลังใช้ EnableEurekaClient และแอปพลิเคชันตัวอย่างอื่น ๆ กำลังใช้ EnableDiscoveryClient

มีความแตกต่างระหว่างสองสิ่งนี้หรือไม่?

คำตอบ:


184

"Discovery Service" มีการนำไปใช้งานหลายอย่าง (ยูเรก้า, กงสุล , ผู้ดูแลสวนสัตว์ ) @EnableDiscoveryClientอาศัยอยู่ในสปริงคลาวด์คอมมอนส์และเลือกการใช้งานบนคลาสพา ธ @EnableEurekaClientอาศัยอยู่ในspring-cloud-netflixและใช้ได้เฉพาะกับ eureka ถ้า eureka อยู่ใน classpath ของคุณก็จะเหมือนกันอย่างมีประสิทธิภาพ


คำถาม: คำอธิบายประกอบทั้งสองที่กล่าวถึงข้างต้นจะเปิดใช้งานตัวสกัดกั้นที่เปิดใช้งาน Ribbon ที่ฉีดเข้าไปใน RestTemplate หรือไม่ ความแตกต่างในพฤติกรรมหรือไม่? ฉันสังเกตเห็นว่าในการใช้งาน Spring Cloud ก่อนหน้านี้@LoadBalancedถูกนำไปใช้โดยอัตโนมัติ แต่ในเวอร์ชันปัจจุบันจำเป็นต้องมีอย่างชัดเจน ขอบคุณ.
fg78nc

1
ใช่. ไม่มีความแตกต่างกัน จำเป็นต้องมีคำอธิบายประกอบแบบ load balance มาเป็นเวลานาน
spencergibb

4
ทำไมบางคนถึงต้องการใช้ @EnableEurekaClient มากกว่า @EnableDisocveryClient ทั่วไป นั่นจะไม่ผูกมัดพวกเขากับการใช้งานยูเรก้าและทำให้การเปลี่ยนแบ็กเอนด์ SD ยากขึ้นในอนาคตหรือไม่?
Adam Hughes

3
ใช่. คำตอบเดียวคือหากพวกเขาต้องการความชัดเจนและบังคับใช้ยูเรก้า
spencergibb

3

แนวคิดบริการการค้นพบในคลาวด์ฤดูใบไม้ผลิถูกนำไปใช้ในรูปแบบต่างๆเช่น Eureka, กงสุล, ผู้ดูแลสวนสัตว์เป็นต้นหากคุณใช้ Eureka โดย Netflix @EnableEurekaClient มีไว้สำหรับสิ่งนั้นโดยเฉพาะ แต่ถ้าคุณใช้การค้นพบบริการอื่น ๆ รวมถึง Eureka คุณสามารถใช้ @EnableDiscoveryClient


1

ในแง่ของการใช้งานจริงและความเรียบง่ายหากศูนย์ที่ลงทะเบียนเป็นยูเรก้า@EnableEurekaClientขอแนะนำ ถ้าเป็นศูนย์ทะเบียนอื่น@EnableDiscoveryClientแนะนำ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.