每天20分钟之eureka的基本使用

2022-07-17 23:44:07 浏览数 (1)

eureka

1 解决的问题

服务的注册中心

2 应用

项目样例地址:

https://github.com/beckbikang/spring-cloud

单独启动几个进程作为eureka-server

高可用server1

代码语言:txt复制
spring.application.name=keureka-server1
server.port=6020
#不向注册中心注册
eureka.client.register-with-eureka=false
#不去检索服务
eureka.client.fetch-registry=false
#关闭过载保护
eureka.server.enable-self-preservation=false
# 每五秒钟同步一次
eureka.server.eviction-interval-timer-in-ms=5000

eureka.client.serviceUrl.defaultZone=http://tom:123456@localhost:6010/eureka/

高可用server2

代码语言:txt复制
spring.application.name=keureka-server2
server.port=6010

eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false

eureka.server.enable-self-preservation=false
eureka.server.eviction-interval-timer-in-ms=5000

eureka.client.serviceUrl.defaultZone=http://tom:123456@localhost:6020/eureka/

生产者配置

代码语言:txt复制
spring.application.name=eureka-client-user
server.port=7010

eureka.client.serviceUrl.defaultZone=http://tom:123456@localhost:6010/eureka/,http://tom:123456@localhost:6020/eureka/
eureka.instance.preferIpAddress=true
eureka.instance.instance-id=${spring.application.name}:${spring.cloud.client.ip-address}:${server.port}
eureka.client.healthcheck.enabled=true
eureka.instance.lease-expiration-duration-in-seconds=5

eureka.instance.metadata-map.yuantiandi=tom

3 实现

关键节点信息

image.pngimage.png

整体设计

基于AP实现,每个节点都有服务的全部信息

详细设计

server设计

  • 服务注册表的设计
  • 服务注册
  • 接受服务心跳
  • 服务剔除
  • 服务下线
  • 集群同步

client设计

  • 读取应用自身配置信息
  • 服务发现客户端
  • 拉取注册表信息
  • 服务注册
  • 初始化定时任务
  • 服务下线

0 人点赞