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的启动流程

 

 

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