5 Eureka Server高可用集羣

5.1 簡介

 

5.2 高可用細集羣搭建

操作流程

1 準備兩個EurekaServer 需要相互註冊

    1號server:9000

#模擬兩個EurekaServer
#端口9000   8000
#兩個服務相互註冊
server.port=9000
spring.application.name=eureka-server
eureka.instance.hostname=localhost
#是否將自己註冊到註冊中心
#eureka.client.register-with-eureka=false
#是否從eureka中獲取註冊信息
#eureka.client.fetch-registry=false
#配置暴露給Eureka Client請求的地址
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:8000/eureka/

    2號server:8000

#模擬兩個EurekaServer
#端口9000   8000
#兩個服務相互註冊
server.port=8000
spring.application.name=eureka-server
eureka.instance.hostname=localhost
#是否將自己註冊到註冊中心
#eureka.client.register-with-eureka=false
#是否從eureka中獲取註冊信息
#eureka.client.fetch-registry=false
#配置暴露給Eureka Client請求的地址
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:9000/eureka/

2 需要將微服務註冊到兩個EurekaServer上


server.port=9001
#服務名稱
spring.application.name=service-product
#註冊中心訪問地址 多個以逗號分隔
eureka.client.service-url.defaultZone=http://localhost:9000/eureka/,http://localhost:8000/eureka/
#使用ip地址註冊
eureka.instance.prefer-ip-address=true

 5.3 細節

5.3.1  在控制檯顯示服務IP

生產者、消費者配置


server.port=9001
#服務名稱
spring.application.name=service-product
#註冊中心訪問地址
eureka.client.service-url.defaultZone=http://localhost:9000/eureka/,http://localhost:8000/eureka/
#使用ip地址註冊
eureka.instance.prefer-ip-address=true
#向註冊中心註冊ip
eureka.instance.instance-id=${spring.cloud.client.ip-address}:${server.port}

5.3.2  Eureka的服務剔除問題

 生產者、消費者配置


server.port=9001
#服務名稱
spring.application.name=service-product
#註冊中心訪問地址
eureka.client.service-url.defaultZone=http://localhost:9000/eureka/,http://localhost:8000/eureka/
#使用ip地址註冊
eureka.instance.prefer-ip-address=true

#心跳時間默認30s
eureka.instance.lease-renewal-interval-in-seconds=4
#續約到期時間 默認90s
eureka.instance.lease-expiration-duration-in-seconds=9

 5.3.3 Eureka的自我保護機制

自我保護機制:超過續約時間沒有發送心跳,15分內達到80%,纔會剔除服務。在開發測試階段一般關閉自我保護機制。

#模擬兩個EurekaServer
#端口9000   8000
#兩個服務相互註冊
server.port=9000
spring.application.name=eureka-server
eureka.instance.hostname=localhost
#是否將自己註冊到註冊中心
#eureka.client.register-with-eureka=false
#是否從eureka中獲取註冊信息
#eureka.client.fetch-registry=false
#配置暴露給Eureka Client請求的地址
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:8000/eureka/
#關閉自我保護機制 開發測試使用
eureka.server.enable-self-preservation=false
#掃描剔除服務的間隔
eureka.server.eviction-interval-timer-in-ms=4000

5.4 Eureka的啓動流程

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章