Spring-Cloud-Netflix-Eureka集羣搭建

eureka集羣原理

  1. 服務啓動後向Eureka註冊,Eureka Server會將註冊信息向其餘Eureka Server進行同步,
  2. 當服務消費者要調用服務提供者,則向服務註冊中心獲取服務提供者地址,而後會將服務提供者地址緩存在本地,
  3. 下次再調用時,則直接從本地緩存中取,完成一次調用。

搭建流程

  1. 修改host文件 C:\Windows\System32\drivers\etc\host
    把只讀屬性去掉
    在這裏插入圖片描述
  2. 添加host 信息
    在這裏插入圖片描述
127.0.0.1   eureka
127.0.0.1   eureka1
127.0.0.1   eureka2
  1. 新建兩個子模塊Eureka3001,Eureka3002
    在這裏插入圖片描述
    在這裏插入圖片描述
  2. 配置和Eureka3000同樣 (pom.xml,啓動類)
    在這裏插入圖片描述
  3. 修改Eureka3000的yml配置文件
    在這裏插入圖片描述
server:
  port: 3000
spring:
  application:
    name: eurekaServer  
eureka:
  server:
    enable-self-preservation: false  #關閉自我保護機制
    eviction-interval-timer-in-ms: 4000 #設置清理間隔(單位:毫秒 默認是60*1000)
  instance:
    hostname: eureka

  client:
    registerWithEureka: true #不把本身做爲一個客戶端註冊到本身身上
    fetchRegistry: true  #不須要從服務端獲取註冊信息(由於在這裏本身就是服務端,並且已經禁用本身註冊了)
    serviceUrl: #微服務要註冊到的地址.
      defaultZone: http://eureka1:3001/eureka,http://eureka2:3002/eureka,
  1. 複製一份application.yml到Eureka3001,Eureka3002
    在這裏插入圖片描述
    在這裏插入圖片描述
  2. 依次啓動Eureka3000,Eureka3001,Eureka3002
    啓動Eureka3000,Eureka3001可能會報錯,由於三個服務相互依賴,只要三個服務所有啓動完成就好了
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
  3. 將user,goods,goods1客戶端註冊到server中心
    1.打開user的application.yml
    在這裏插入圖片描述
server:
  port: 5000
eureka:
  client:
    serviceUrl:
      #eureka服務端提供的註冊地址 參考服務端配置的這個路徑
      defaultZone: http://eureka:3000/eureka,http://eureka1:3001/eureka,http://eureka2:3002/eureka
  instance:
    instance-id: user-1 #此實例註冊到eureka服務端的惟一的實例ID
    prefer-ip-address: true #是否顯示IP地址
    #eureka客戶須要多長時間發送心跳給eureka服務器,代表它仍然活着,默認爲30 秒 (與下面配置的單位都是秒)
    leaseRenewalIntervalInSeconds: 10
    #Eureka服務器在接收到實例的最後一次發出的心跳後,須要等待多久才能夠將此實例刪除,默認爲90秒
    leaseExpirationDurationInSeconds: 30

spring:
  application:
    name: client-user #此實例註冊到eureka服務端的n

注意啓動類註解在這裏插入圖片描述
goods,goods1
在這裏插入圖片描述
在這裏插入圖片描述
9. 訪問localhost:3000
在這裏插入圖片描述
完成java

相關文章
相關標籤/搜索