springclound 中eureka注册源码解读

springcloud 是一个比较全面的微服务的一套解决方案,那么今天就看一下eureka注册中心的一些原理。

1.eureka客户端怎么注册?

首先我们需要明白,这是在spring基础上进行开源的生态组建,一些环境配置这里暂且不说,可以参考网上进行配置。在springboot中我们导入eureka的client端jar包,我们知道springboot 工作原理(不清楚可以查阅资料),在我们的jar包中,在启动的时候,springboot获取一些自动配置类进行环境运行,所以我们找到client端jar包,

我们可以看到,在spring.factories中会配置很多的自动配置类,这是spring的核心思想,如果不知道可以查阅资料,我们可以看到客户端自动配置类,我们可以看到在此类中有很多的配置相关的类,这些是加载我们的配置信息的类,感兴趣我们可以每个属性类看一下,这些都是为了我们创建客户端做准备,关键的方法是:

点进去我们可以看到此类的继承关系,

所以我们可以通过super(applicationInfoManager, config, args);方法调用DiscoveryClient中方法,

在这里client开启了很多的定时任务,具体可以阅读源码,关键代码是

此方法是注册的入口,这里我们会维护很多的定时任务,比如此服务是否抓取,心跳等,

从上图关键代码中我们可以看到,如果我们配置了注册服务它才会去进行注册动作,在任务中有一个检测心跳的任务,这是一个线程,点进去我们可以看到

搞了这么多,终于揭开神秘面纱了,renew()方法就是注册的关键:

具体eureka 请求操作可以查看:https://github.com/Netflix/eureka/wiki/Eureka-REST-operations

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值