原理说明
基本原理
上图是来自eureka的官方架构图,这是基于集群配置的eureka;
- 处于不同节点的eureka通过Replicate进行数据同步
- Application Service为服务提供者
- Application Client为服务消费者
- Make Remote Call完成一次服务调用
服务启动后向Eureka注册,Eureka Server会将注册信息向其他Eureka Server进行同步,当服务消费者要调用服务提供者,则向服务注册中心获取服务提供者地址,然后会将服务提供者地址缓存在本地,下次再调用时,则直接从本地缓存中取,完成一次调用。
当服务注册中心Eureka Server检测到服务提供者因为宕机、网络原因不可用时,则在服务注册中心将服务置为DOWN状态,并把当前服务提供者状态向订阅者发布,订阅过的服务消费者更新本地缓存。
服务提供者在启动后,周期性(默认30秒)向Eureka Server发送心跳,以证明当前服务是可用状态。Eureka Server在一定的时间(默认90秒)未收到客户端的心跳,则认为服务宕机,注销该实例。
项目实战参照之前的Eureka服务注册(https://blog.youkuaiyun.com/weixin_42746471/article/details/103119870)
1.新建microservicecloud-eureka-7002/microservicecloud-eureka-7003,并按照7001进行pom文件修改
2.修改映射配置
找到C:\Windows\System32\drivers\etc路径下的hosts文件
127.0.0.1 eureka7001.com
127.0.0.1 eureka7002.com
127.0.0.1 eureka7003.com
3.3台eureka服务器的yml配置
7001:defaultZone: http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/
7002:defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7003.com:7003/eureka/
7003:defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/
4.microservicecloud-provider-dept-8001微服务发布到上面3台eureka集群配置中
至此Eureka集群搭建成功