nacos2.0客户端注册流程分析

版本介绍

copy几个jar包出来康康把

spring-cloud-starter-alibaba-nacos-config-2021.0.4.0.jar
spring-cloud-starter-alibaba-nacos-discovery-2021.0.4.0.jar
nacos-client-2.0.4.jar

注册流程

  1. 读取Spring Boot装载配置文件 spring.factories,找到启动类
    NacosAutoServiceRegistration;
  2. NacosAutoServiceRegistration 继承 AbstractAutoServiceRegistration,它实现
    ApplicationListener 接口;
  3. 实现ApplicationListener接口的 onApplicationEvent 方法,该方法调用 bind() ,然后调用
    start() 方法;
  4. start()方法中调用register(),该方法调用 NacosServiceRegistry 的register方法;
  5. NacosServiceRegistry的register方法内部调用 NacosNamingService 的
    registerInstance 方法;
  6. 根据实例的瞬时状态选择不同的proxy执行注册,默认是 gRPC 协议的 NamingGrpcClientProxy 执行注册;

捞一张网上的客户端注册流程图

在这里插入图片描述

代码分析

直接找到nacos discovery包下的com.alibaba.cloud.nacos.registry.NacosServiceRegistryAutoConfiguration类,里面有3个关键的bean。

  1. 实际去做注册动作的bean com.alibaba.cloud.nacos.registry.NacosServiceRegistry
  2. 包含注册信息的bean com.alibaba.cloud.nacos.registry.NacosRegistration
  3. 触发注册bean
    com.alibaba.cloud.nacos.registry.NacosAutoServiceRegistration

代码描述

监听WebServerInitializedEvent时间发起注册,
之后就是顺藤摸瓜到org.springframework.cloud.client.serviceregistry.AbstractAutoServiceRegistration#register方法中直接进入注册主题。

在com.alibaba.cloud.nacos.registry.NacosServiceRegistry#register方法中就是具体的注册流程
在这里插入图片描述

注册入口1
在这里插入图片描述

注册入口2
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值