【Nacos源码篇(七)】Nacos事件通知总结

如果你看了之前的源码分析的话,可以看看这篇总结:

消息通知总结

在这里插入图片描述
上图是一个事件从new出来到被执行的整套流程,结合之前几篇文章,再次梳理一遍整个流程:
⚡️ 首先,比如一个服务注册事件,会经过NotifyCenter的静态方法publishEvent来发布一个事件
⚡️ 然后会根据该事件的全限定类名,去NotifyCenter内部的publishMap中找到这个事件所对应的事件发布者
⚡️ 这个时候调用事件发布者的 offer方法向阻塞队列 queue 中添加事件,来暂存消息
⚡️ 同时呢,事件发布者也是一个线程,在其被new出来的同时,就被调用了start方法,开始一直从阻塞队列中取事件
⚡️ 当取出事件后,handleEvent就会拿到其事件的Class的类型,然后再在其内部的subscribes取出订阅了这个事件类型的所有的订阅者们
⚡️ 最后再判断这个订阅者针对这个事件是需要同步方式还是异步方式处理事件
⚡️ 调用订阅者的onEvent(T event)方法,事件执行的落地点

Nacos源码篇

语雀版文档

Nacos源码注释

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值