【SpringCloud】03——Eureka服務註冊
阿新 • • 發佈:2018-11-08
1.什麼是Eureka?
Ereka相當於zookeeper,是服務註冊中心,當專案中微服務越來越多時,需要進行服務間呼叫,這時就需要將微服務都註冊進入Eureka,服務之間可以互相發現,然後才可以進行呼叫.
系統中的其他微服務,使用Eureka 客戶端連線到Eureka Server並維持心跳連線,這樣就可以通過Eureka server來監控系統中各個微服務是否執行,SpringCloud的一些其他模組就可以通過Eureka Server來發現系統中其他微服務,並執行相關邏輯。
Eureka 包含兩個元件,Eureka Server 和 Eureka Client.
Eureka Server 提供服務註冊服務,Eureka Client 就是我們各個微服務。如下是Eureka結構圖。
如何將服務註冊進Eureka?
1.Eureka伺服器端配置
1.1新建Eueka的springboot專案
1.2Pom座標
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
1.3修改yml 檔案
server: port: 7001 #啟動埠 eureka: instance: hostname: localhost #eureka服務端的例項名稱 client: register-with-eureka: false #不向註冊中心註冊自己 fetch-registry: false #false 表示自己就是註冊中心,我的職責就是維護服務例項,並不需要去檢索服務 service-url: defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ #告訴客戶端Eureka地址,設定Eureka Server互動的地址查詢服務和註冊服務
1.4 新增啟動類
新增@EnableEurekaServer,說明自己是Eureka服務端
@SpringBootApplication
@EnableEurekaServer //服務端啟動類,接受其他服務註冊進來
public class EurekaServer7001_App {
public static void main(String[] args){
SpringApplication.run(EurekaServer7001_App.class,args);
}
}
通過訪問 localhost:7001就可以進入Eureka 介面
2.Eureka 客戶端配置
2.1修改Pom檔案新增
<!--把專案註冊進Eureka-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
2.2修改yml 檔案新增
eureka:
client:
service-url:
#客戶端註冊進eureka服務的地址,同eureka暴露給外部的地址
defaultZone: http://localhost:7001/eureka/
instance:
#註冊到eureka後,status的名字(服務在eureka的唯一標誌)
instance-id: ${spring.application.name}:${random.int}
#訪問路徑可以顯示IP地址
prefer-ip-address: true
2.3 啟動類新增@EnableEurekaClient註解,作為Eureka客戶端
@SpringBootApplication
@EnableEurekaClient //可以把自己的註冊進入Eureka
public class DeptProvider8001_APP {
public static void main(String[] args)
{
SpringApplication.run(DeptProvider8001_APP.class,args);
}
}
總結:我們加入一個新的元件技術,需要做的操作包括修改pom ,yml ,以及在啟動類上添加註解.