Dubbo笔记-4-Dubbo起停原理

配置解析

目前Dubbo框架同时提供了3中配置方式:XML配置,注解,属性文件配置

基于schema设计解析

Dubbo框架直接集成了Spring的能力,利用了Spring配置文件扩展出自定义的结息方式.Dubbo配置约束文件在dubbo-config/dubbo-config-spring/src/main/resources/dubbo.xsd中
dubbo.xsd文件用来约束使用XML配置时的标签和对应属性,比如Dubbo中的dubbo:servicedubbo:reference标签等.Spring在解析到自定义的namespace标签是,会查找对应的spring.schemas和spring.handlers文件,最终触发Dubbo的DubboNamespaceHandler类来进行初始化和解析

1
2
3
4
5
6
7
// spring.schemas文件
http\://dubbo.apache.org/schema/dubbo/dubbo.xsd=META-INF/dubbo.xsd
http\://code.alibabatech.com/schema/dubbo/dubbo.xsd=META-INF/compat/dubbo.xsd

// spring.handlers文件
http\://dubbo.apache.org/schema/dubbo=org.apache.dubbo.config.cpring.schema.DubboNamespaceHandler
http\://code.alibabatech.com/schema/dubbo=org.apache.dubbo.config.spring.schema.DubboNamespaceHandler

其中,spring.schemas文件指明约束文件的具体路径,spring.handlers文件指明DubboNamespaceHadler类来解析标签

Dubbo设计之初也考虑到属性最大限度的复用,因此对schema进行了精心的设计,Dubbo schema层级详细设计:

QQ图片20190817180312.jpg

TODO: