1.Eureka

如果某一天這些微服務(wù)的端口或是地址大規(guī)模地發(fā)生改變,我們就不得不將服務(wù)之間的調(diào)用路徑大規(guī)模的同步進行修改.因此我們需要一個集中管理微服務(wù)的平臺,Eureka能夠自動注冊并發(fā)現(xiàn)微服務(wù),然后對服務(wù)的狀態(tài)、信息進行集中管理,這樣當(dāng)我們需要獲取其他服務(wù)的信息時,我們只需要向Eureka進行查詢就可以了
1.2微服務(wù)的注冊與發(fā)現(xiàn)
(1)在父工程中添加一下SpringCloud的依賴
(2)在eureka模塊下的pom.xml添加依賴
(3)為eureka模塊添加主類
注意添加注解@EnableEurekaServer
(4)為eureka模塊添加配置
(5)為每個微服務(wù)添加依賴
(6)為每個微服務(wù)修改配置
(7)為每個微服務(wù)添加服務(wù)名稱
(8)調(diào)用例子
以下是一個不同微服務(wù)之間調(diào)用的例子:
不同微服務(wù)之間使用http進行數(shù)據(jù)交互
http://微服務(wù)名:端口號/xxx/xxx
1.3注冊中心高可用
雖然Eureka能夠?qū)崿F(xiàn)服務(wù)注冊和發(fā)現(xiàn),但是如果Eureka服務(wù)器崩潰了,所有需要用到服務(wù)發(fā)現(xiàn)的微服務(wù)就GG了,為了避免,這種問題,我們也可以像上面那樣,搭建Eureka集群,存在多個Eureka服務(wù)器,這樣就算掛掉其中一個,其他的也還在正常運行,就不會使得服務(wù)注冊與發(fā)現(xiàn)不可用
1.3.1配置
首先我們需要修改一下Eureka服務(wù)端的配置文件,這里我們創(chuàng)建兩個配置文件:
對創(chuàng)建的兩個配置文件分別添加啟動配置,直接使用spring.profiles.active
指定啟用的配置文件即可:


兩個Eureka管理頁面都可以被訪問,我們訪問其中一個:可以看到下方replicas
中已經(jīng)包含了另一個Eureka服務(wù)器的地址,并且是可用狀態(tài)


接著我們對每個微服務(wù)配置也進行修改:
可以看到,服務(wù)全部成功注冊,并且兩個Eureka服務(wù)端都顯示為已注冊:

將其中一個Eureka服務(wù)器關(guān)閉掉,可以看到它會直接變成不可用狀態(tài):
