SpringCloud學習筆記一 服務註冊與發現

目的

從新再過一遍SpringCloud,這裏算是筆記,源碼會傳到git上。git

Server

建立Eureka Server

這裏使用Spring Initializr方式建立工程 web

  • 修改pom文件裏的版本:SpringBoot版本2.1.3.RELEASE,SpringCloud版本Greenwich.SR1。版本是很重要的,建立後去官網肯定一下版本是否有一致。
  • 啓動類加@EnableEurekaServer

啓動工程

頁面上輸入http://localhost:8080/ 能夠看到以下spring

把applications.properties改成使用applications.yml。 server也是client,能夠把本身註冊進去。app

eureka:
    client:
        service-url:
#這裏底層是Map,因此要輸入鍵值對形式
         defaultZone: http://localhost:8080/eureka/

如上面applications.yml編寫,能夠看到運行後以下: spring-boot

像上面的狀況,做爲server,不讓註冊的話,能夠使用 register-with-eureka: falseurl

Client

建立工程

  • 修改pom文件,添加spring-boot-starter-web依賴,SpringBoot版本2.1.3.RELEASE,SpringCloud版本Greenwich.SR1。
  • 啓動類引入@EnableDiscoveryClient註解。
  • 修改applications.properties爲applications.yml
eureka:
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka/
#      自定義連接
#  instance:
#    hostname: clientName
spring:
  application:
    name: client

啓動client

修改eureka端口號爲8761,啓動client,能夠看到註冊到eureka code

高可用

這裏模擬一下三個eureka互相調用的狀況,端口號分別爲8761 8762 8763.server

逐個修改aplications.yml中兩兩互相調用blog

eurekaApplication1:get

eureka:
  client:
    service-url:
      defaultZone: http://localhost:8762/eureka/,http://localhost:8763/eureka/
spring:
  application:
    name: test

eurekaApplication2:

eureka:
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka/,http://localhost:8763/eureka/
spring:
  application:
    name: test

eurekaApplication3:

eureka:
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka/,http://localhost:8762/eureka/
spring:
  application:

而後啓動client,頁面能夠看到:

其它兩個8762 8763頁面也是對應的.

這裏client雖然註冊到8761上,8762 8763都可註冊,可是避免一個掛了,就註冊不上了,能夠註冊多個eureka。

源碼地址

git地址

相關文章
相關標籤/搜索