Eureka服务详解

本文详细介绍了Eureka服务注册、服务续约、客户端获取服务列表、服务下线及服务剔除的过程。Eureka客户端启动时向服务端注册,并定时发送心跳续约,90秒未收心跳则删除实例。此外,Eureka的自我保护机制防止网络故障时误删服务,只有在特定条件下才会关闭自我保护并剔除服务。默认使用Ribbon进行负载均衡。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、服务注册

在Eureka Client启动的时候,将自身的服务的信息发送到Eureka Server,包括比如IP地址、端口,运行状况指示符URL,主页等。
在DiscoveryClient类有一个服务注册的方法register(),该方法是通过Http请求向Eureka Client注册。 
如果需要向Eureka Server注册,则开启注册,同时开启了定时向Eureka Server服务续约的定时任务,

2、服务续约 

Eureka客户会每隔30秒发送一次心跳来续约。 通过续约来告知Eureka Server该Eureka客户仍然存在,没有出现问题。 正常情况下,如果Eureka Server在90秒没有收到Eureka客户的续约,它会将实例从其注册表中删除。 建议不要更改续约间隔。

eureka.instance.lease-renewal-interval-in-seconds:10    #客户端配置 ,eureka客户端需要向eureka服务器发送心跳的频率  (Spring Cloud默认该配置是 30s)

eureka.instance.lease-expiration-duration-in-seconds:30   # 客户端配置,eureka服务器在接收到最后一个心跳之后等待的时间,然后才能从列表中删除此实例 (Spring Cloud默认该配置是 90s)
 

3、客户端从服务器获取注册列表信息 

Eureka客户端从服务器获取注册表信息,并将其缓存在本地。客户端会使用该信息查找其他服务,从而进行远程调用。
该注册列表信息定期(每30秒钟)更新一次(从服务端查询)。
每次返回注册列表信息可能与Eureka客户端的缓存信息不同, Eureka客户端自动处理。
如果由于某种原因导致注册列表信息不能及时匹配,Eureka客户端则会重新获取整个注册表信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿365

祝你好运,谢谢

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值