dubbo导出流程
2025-10-27 19:58:00 0 举报
dubbo源码导出流程逻辑整理
作者其他创作
大纲/内容
否
isDelay方法中supportedApplicationListener属性是表示当前Spring容器是否支持ApplicationListener。当Spring容器通过ServiceBean的setApplicationContext方法设置到ServiceBean中时会检测Spring容器是否支持ApplicationListener。检测方式:直接调用Spring容器addApplicationListener的方法注册该ServiceBean实列,若异常调用Spring容器addListener,若仍异常,则supportedApplicationListener为false。
isDelay()
是否已导出
延迟导出:调用调度程序延迟delay毫秒导出
前置工作-配置检查
export配置是否为null
是
配置检查、缺失补漏
provider对象是否为null
从provider对象中获取delay配置
不需要导出
delay属性是否为null
isUnexported()
从provider对象中获取export配置
是否延迟导出
前置工作-组装URL为配置载体
export()
onApplicationEvent()
isExported()
doExport()
官方文档说明:采用 URL 作为配置信息的统一格式,所有扩展点都通过传递 URL 携带配置信息。
export配置不为空且为false
立即导出
doExportUrls()
ServiceBean
结束
是否取消导出
延迟导出、已导出和取消导出的都不需要导出
delay配置不为空且大于0
0 条评论
下一页