一:構建項目html
二:服務註冊與發現spring
爲何選擇Eureka,請看上一篇博客 Eureka -- 淺談Eurekaapp
IDEA 選擇 New Project 選擇 Spring Initializr maven
填入Group組、Artifice項目名,勾選Type爲 Gradle Config(這裏是基於gradle實現的)ide
選擇組件:根據本身須要進行選擇,這裏須要Eureka來作爲註冊中心,因此我先勾線了Eureka的兩個服務依賴學習
建立完成後 在 bulid.gradle中 使用subprojects統一全部子項目的配置fetch
subprojects{} 做用:使用多模塊項目時,不一樣模塊之間有相同的配置,致使重複配置,能夠將相同的部分抽取出來,使用配置注入的技術完成子項目的配置。根項目就像一個容器, subprojects 方法遍歷這個容器的全部元素而且注入指定的配置。gradle
首先先建立一個Module模塊,操做以下:右鍵項目 New Moduleurl
選擇gradle(若是用maven構建請選擇maven)spa
輸入模塊名稱 register-center
完成模塊建立,在子模塊的bulid.gradle中 添加 eureka 註冊服務依賴
dependencies { compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-server') }
在main裏面建立啓動類RegisterApplication(注意加入@EnableEurekaServer註解 來代表本身是一個註冊中心)
@SpringBootApplication @EnableEurekaServer//代表本身是註冊中心 public class RegisterApplication { public static void main(String[] args) { SpringApplication.run(RegisterApplication.class, args); } }
在resources中添加application.yml配置文件
spring:
application:
name: register-center
server:
port: 10000
eureka:
client:
service-url:
defaultZone: http://localhost:10000/eureka#默認地址
register-with-eureka: false#啓動時不註冊代表本身是一個註冊中心
fetch-registry: false
這裏自定義了Eureka端口地址
其Eureka默認端口地址爲8761
打開Eureka地址 發現 本身(register-center)已經被註冊進了,和咱們起初只是單讓它做爲一個註冊中心是不匹配的
能夠發現如今是沒有配置 register-with-eureka: false fetch-registry: false 這兩句代碼的 Eureka也將本身註冊進來,將這兩句代碼加入配置文件中 再次刷新Eureka發現本身已經不在註冊中心了
同上再次建立一個Module(order-client) 在其bulid.gradle中添加eureka客戶端的依賴
dependencies { compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-client') }
建立啓動類OrderClientApplication(添加@EnableDiscoveryClient //表示本身是eureka客戶端)
@SpringBootApplication @EnableEurekaClient //代表本身是eureka客戶端 public class OrderClientApplication { public static void main(String[] args) { SpringApplication.run(OrderClientApplication.class,args); } }
添加application.yml配置 這裏就不須要在寫入 register-with-eureka: false fetch-registry: false
這裏在啓動時應該注意先將eureka服務端(register-center)啓動,再啓動客戶端(order-client),如不先啓動服務端(也能夠添加 register-with-eureka: false fetch-registry: false 解決可是這就又成爲服務端了,並非咱們想要的),客戶端將報以下錯誤
這裏牽扯到Eureka的特色:便是服務端,又是客戶端,後續會對Eureka註冊過程進行一個分析想學習的,請關注博主o,這裏先不作說明
啓動服務端再啓動客戶端,刷新註冊中心,發現客戶端已經註冊進去了
至此,Eureka的服務註冊就已經實現了。