服务方和消费方的通用配置:
<dubbo:application>(ApplicationConfig)当前应用信息,可以在控制台中直接查看的,一般设置为当前应用的名字即可。
<dubbo:registry>(RegistryConfig)指定zookeeper的注册中心。
服务方标签:
<dubbo:provider>(providerConfig)用来做默认配置,由于dubbo标签有默认的下层自动继承上层的属性配置,如果想配置一个属性timeout,不需要在每一个标签里都配置,在这个标签里配置后,下面的标签会自动继承timeout属性。对程序来说没有实际的含义,主要用来起继承作用。
<dubbo:protocol>(ProtocolConfig)指定协议
<dubbo:service>(ServiceConfig)配置目标服务类,<dubbo:method>(MethodConfig)标签属于service标签的一个子标签,<dubbo:argument>标签属于<dubbo:method>的子标签。
消费方标签:
<dubbo:consumer>(ConsumerConfig)消费方默认配置,通服务方类似,用作属性继承
<dubbo:reference>(ReferenceConfig)引用服务方配置,用于创建一个远程代理服务,<dubbo:method>(MethodConfig)标签属于reference标签的一个子标签,<dubbo:argument>标签属于<dubbo:reference>的子标签。
dubbo常规配置:(xml方式和properties方式)
- <dubbo:reference check="false" /> 关闭某个服务的启动时检查:(没有提供者时报错)
- <dubbo:consumer check="false" /> 关闭所有服务的启动时检查:(没有提供者时报错) 写在定义服务消费者一方
- <dubbo:registry check="false" /> 关闭注册中心启动时检查:(注册订阅失败时报错)
- <dubbo:reference init="true" /> 引用缺省是延迟初始化的,改为饥饿加载
- <dubbo:registry register="false" /> 禁用注册
- < dubbo:reference id=“aaa" interface="com.xxx.XxxService" />
回声测试:所有服务自动实现EchoService接口, 强转EchoService测试可用性, EchoService echoService = ( EchoService ) ctx.getBean(“aaa")
注解方式配置:
服务端:
配置包扫描:<dubbo:annotation package="com.xxx.xxx"/> ,暴露服务@Service (com.alibaba.dubbo.config.annotation.Service)
消费端:
配置包扫描:<dubbo:annotation package="com.xxx.xxx"/> ,暴露服务 @Reference --com.alibaba.dubbo.config.annotation.Reference