eureka client服务注册 与eureka server 处理服务注册流程
2021-09-01 16:22:31 3 举报
eureka client服务注册 与eureka server 处理服务注册流程
作者其他创作
大纲/内容
将当前时间戳与AppName 添加到新注册的队列中recentRegisteredQueue
调用注册表PeerAwareInstanceRegistry的register方法进行服务注册
将租约信息放入到最最近该表的队列中recentlyChangedQueue
post方法
jerseyClient
web容器
调用
如果根据实例id获取从gmap中获取到某个实例的租约信息,如果租约信息不是null的话,就说明之前注册过,然后比对一下这个新的intanceInfo有个脏的时间与之前的那个脏的时间进行比对,如果新的小于之前那个老得,说明有问题,然后就把老的intanceInfo 设置成新的intanceInfo,来完成后续的处理,如果老得那个租约信息是null的话,说明之前没有注册过,然后就将期望续约个数+2(这个用作后面的保护机制)
设置instanceInfo最后修改时间
ApplicationResource
失效缓存invalidateCache()
eureka client 进行服务注册
如果实例gmap是个null的话,就创建缓存起来
发送post请求
DiscoveryClient
调用父类的register方法进行服务注册super.register
eureka server 处理服务注册,它是用用jersey框架来处理restful请求的
register
同步给其他eureka server 节点
处理leaseDuration 时间,默认是90s ,然后如果你instanceInfo中带着的话,就用你的那个时间
根据appName从注册表中获取实例gmap
放入实例map中,也就是放入注册表
http://localhost:8080/eureka/v2/apps/AppName
0 条评论
回复 删除
下一页