柚子快報(bào)激活碼778899分享:Eureka的介紹與使用
柚子快報(bào)激活碼778899分享:Eureka的介紹與使用
Eureka 是 Netflix 開源的一款服務(wù)注冊(cè)與發(fā)現(xiàn)組件,在微服務(wù)架構(gòu)中扮演著重要的角色。
一、Eureka 的介紹
工作原理
服務(wù)注冊(cè):各個(gè)微服務(wù)在啟動(dòng)時(shí),會(huì)向 Eureka Server 發(fā)送注冊(cè)請(qǐng)求,將自身的服務(wù)名、實(shí)例名、IP 地址、端口等信息注冊(cè)到 Eureka Server 中。服務(wù)續(xù)約:注冊(cè)成功的服務(wù)會(huì)按照一定的時(shí)間間隔向 Eureka Server 發(fā)送心跳,以維持服務(wù)的“活性”。服務(wù)獲?。悍?wù)消費(fèi)者在調(diào)用服務(wù)時(shí),會(huì)先從 Eureka Server 獲取服務(wù)提供者的注冊(cè)信息列表,然后根據(jù)負(fù)載均衡策略選擇一個(gè)服務(wù)實(shí)例進(jìn)行調(diào)用。服務(wù)下線:當(dāng)服務(wù)實(shí)例關(guān)閉或出現(xiàn)故障時(shí),會(huì)向 Eureka Server 發(fā)送下線請(qǐng)求,Eureka Server 將該實(shí)例從服務(wù)列表中刪除。 特點(diǎn)
高可用性:Eureka Server 采用了Peer-to-Peer 的架構(gòu),每個(gè) Eureka Server 都是平等的,多個(gè) Eureka Server 之間會(huì)相互復(fù)制服務(wù)注冊(cè)信息,即使部分 Eureka Server 節(jié)點(diǎn)出現(xiàn)故障,也不會(huì)影響整個(gè)服務(wù)發(fā)現(xiàn)系統(tǒng)的可用性。自我保護(hù)機(jī)制:當(dāng)網(wǎng)絡(luò)分區(qū)等故障導(dǎo)致大量服務(wù)實(shí)例的心跳不能按時(shí)到達(dá) Eureka Server 時(shí),Eureka Server 會(huì)進(jìn)入自我保護(hù)模式,不會(huì)刪除服務(wù)實(shí)例,以防止誤判導(dǎo)致服務(wù)不可用。
二、Eureka 的使用
搭建 Eureka Server
創(chuàng)建一個(gè) Maven 項(xiàng)目,并在?pom.xml?文件中添加 Eureka Server 相關(guān)的依賴。配置?application.properties?或?application.yml?文件,設(shè)置服務(wù)端的端口、注冊(cè)中心的地址等信息。創(chuàng)建啟動(dòng)類,并添加?@EnableEurekaServer?注解,啟動(dòng) Eureka Server 服務(wù)。 服務(wù)注冊(cè)
對(duì)于服務(wù)提供者,同樣在?pom.xml?文件中添加 Eureka 客戶端的依賴。在配置文件中設(shè)置 Eureka Server 的地址等信息。在啟動(dòng)類上添加?@EnableDiscoveryClient?或?@EnableEurekaClient?注解,啟動(dòng)服務(wù)時(shí)將服務(wù)注冊(cè)到 Eureka Server 上。 服務(wù)發(fā)現(xiàn)與調(diào)用
服務(wù)消費(fèi)者在代碼中通過(guò)?DiscoveryClient?或其他相關(guān)的工具類從 Eureka Server 獲取服務(wù)提供者的列表。然后根據(jù)負(fù)載均衡策略(如隨機(jī)、輪詢等)選擇一個(gè)服務(wù)實(shí)例進(jìn)行遠(yuǎn)程調(diào)用。
通過(guò)以上步驟,就可以在微服務(wù)架構(gòu)中使用 Eureka 實(shí)現(xiàn)服務(wù)的注冊(cè)與發(fā)現(xiàn),提高系統(tǒng)的靈活性和可擴(kuò)展性。
柚子快報(bào)激活碼778899分享:Eureka的介紹與使用
好文閱讀
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。