转载自  Dubbo xml配置方式

以 XML 配置的方式来配置你的 Dubbo 应用

有关 XML 的详细配置项,请参见:配置参考手册。如果不想使用 Spring 配置,而希望通过 API 的方式进行调用,请参见:API配置。想知道如何使用配置,请参见:快速启动。

请在此查看文档描述的完整示例

provider.xml 示例

<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"xmlns="http://www.springframework.org/schema/beans"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd"><dubbo:application name="demo-provider"/><dubbo:registry address="zookeeper://127.0.0.1:2181"/><dubbo:protocol name="dubbo" port="20890"/><bean id="demoService" class="org.apache.dubbo.samples.basic.impl.DemoServiceImpl"/><dubbo:service interface="org.apache.dubbo.samples.basic.api.DemoService" ref="demoService"/>
</beans>

consumer.xml示例

<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"xmlns="http://www.springframework.org/schema/beans"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd"><dubbo:application name="demo-consumer"/><dubbo:registry group="aaa" address="zookeeper://127.0.0.1:2181"/><dubbo:reference id="demoService" check="false" interface="org.apache.dubbo.samples.basic.api.DemoService"/>
</beans>

所有标签都支持自定义参数,用于不同扩展点实现的特殊配置,如:

<dubbo:protocol name="jms"><dubbo:parameter key="queue" value="your_queue" />
</dubbo:protocol>

或: 1

<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"xmlns:p="http://www.springframework.org/schema/p"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">  <dubbo:protocol name="jms" p:queue="your_queue" />
</beans>

配置之间的关系

标签 用途 解释
<dubbo:service/> 服务配置 用于暴露一个服务,定义服务的元信息,一个服务可以用多个协议暴露,一个服务也可以注册到多个注册中心
<dubbo:reference/> 2 引用配置 用于创建一个远程服务代理,一个引用可以指向多个注册中心
<dubbo:protocol/> 协议配置 用于配置提供服务的协议信息,协议由提供方指定,消费方被动接受
<dubbo:application/> 应用配置 用于配置当前应用信息,不管该应用是提供者还是消费者
<dubbo:module/> 模块配置 用于配置当前模块信息,可选
<dubbo:registry/> 注册中心配置 用于配置连接注册中心相关信息
<dubbo:monitor/> 监控中心配置 用于配置连接监控中心相关信息,可选
<dubbo:provider/> 提供方配置 当 ProtocolConfig 和 ServiceConfig 某属性没有配置时,采用此缺省值,可选
<dubbo:consumer/> 消费方配置 当 ReferenceConfig 某属性没有配置时,采用此缺省值,可选
<dubbo:method/> 方法配置 用于 ServiceConfig 和 ReferenceConfig 指定方法级的配置信息
<dubbo:argument/> 参数配置 用于指定方法参数配置

不同粒度配置的覆盖关系

以 timeout 为例,下图显示了配置的查找顺序,其它 retries, loadbalance, actives 等类似:

  • 方法级优先,接口级次之,全局配置再次之。
  • 如果级别一样,则消费方优先,提供方次之。

其中,服务提供方配置,通过 URL 经由注册中心传递给消费方。

(建议由服务提供方设置超时,因为一个方法需要执行多长时间,服务提供方更清楚,如果一个消费方同时引用多个服务,就不需要关心每个服务的超时设置)。

理论上 ReferenceConfig 中除了interface这一项,其他所有配置项都可以缺省不配置,框架会自动使用ConsumerConfig,ServiceConfig, ProviderConfig等提供的缺省配置。


  1. 2.1.0 开始支持,注意声明:xmlns:p="http://www.springframework.org/schema/p" ↩︎

  2. 引用缺省是延迟初始化的,只有引用被注入到其它 Bean,或被 getBean() 获取,才会初始化。如果需要饥饿加载,即没有人引用也立即生成动态代理,可以配置:<dubbo:reference ... init="true" /> ↩︎

Dubbo(四)之xml配置方式相关推荐

  1. Dubbo(RPC原理、Dubbo架构负载均衡配置方式)(3)

    1.什么是负载均衡 先来个官方的解释. 维基百科对负载均衡的定义:负载均衡改善了跨多个计算资源(例如计算机,计算机集群,网络链接,中央处理单元或磁盘驱动的的工作负载分布.负载平衡旨在优化资源使用,最大 ...

  2. Spring框架学习笔记09:基于XML配置方式搭建SSM框架实现用户登录

    文章目录 一.采用MVC架构 二.用户登录运行效果 三.基于XML配置方式搭建SSM框架实现用户登录 (一)创建数据库与表 - simonshop (t_user) 1.创建数据库 - simonsh ...

  3. SSM框架笔记15:SSM框架西蒙购物网(XML配置方式)

      SSM框架西蒙购物网(XML配置方式) 功能需求: 1.只有注册用户成功登录之后才可查看商品类别,查看商品,选购商品,生成订单.查看订单. 2.只有管理员才有权限进行购物网后台管理(用户管理+类别 ...

  4. 转载 - Struts2基于XML配置方式实现对action的所有方法进行输入校验

    出处:http://www.cnblogs.com/Laupaul/archive/2012/03/15/2398360.html http://www.blogjava.net/focusJ/arc ...

  5. SSM框架笔记06:初探Spring——采用XML配置方式

    初探Spring--采用XML配置方式   Spring框架是一个轻量级的企业级开发的一站式解决方案.所谓解决方案就是可以基于Spring解决Java EE开发的所有问题.Spring框架主要提供了I ...

  6. 基于XML配置方式实现对action的所有方法进行校验

    基于XML配置方式实现 对action的所有方法进行校验或者对Action的指定方法进行校验 Action也要继承ActionSupport,并且提供校验文件,校验文件和action类放在同一个包下 ...

  7. 【Spring学习05】四种xml配置注入方式

    本文博客地址:http://blog.csdn.net/soonfly/article/details/68507615 (转载请注明出处) 平常应用Spring开发中,用得最多的是容器.spring ...

  8. Spring Boot 2.x基础教程:使用MyBatis的XML配置方式

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 翟永超 来源 | http://blog.di ...

  9. Spring框架学习笔记07:基于XML配置方式使用Spring MVC

    文章目录 一.Spring MVC概述 1.MVC架构 2.Spring MVC 3.使用Spring MVC的两种方式 二.基于XML配置与注解的方式使用Spring MVC (一)创建Spring ...

最新文章

  1. ASP.NET禁用视图状态
  2. 书山有径——走进清华大学图书馆
  3. 不属于python语言特点的是_电脑无法关机,电脑关机关不了,电脑无法正常关机 - 为什么电脑无法关机 - 安全专题...
  4. 使用cocoapods
  5. EntityFramework用法探索(三)CodeFirst流畅API
  6. 二进制权值计算 lsb_2020年二级计算机基础知识备考(第二章)
  7. 公众号标题变迁史 - 你有没有被套路?
  8. 【Flink】Flink 源码之ExecutionGraph
  9. labeme批量转换json文件_Python实现markdown文件批量转换为word
  10. MCU VR班會(07)記錄
  11. 【TODO】每日时间工作总结记录模板
  12. TFS2010安装全过程
  13. 第一章 模式识别基本概念
  14. 西数完善黑盘系列 3TB黑盘终面市
  15. java 正则用法_Java正则用法
  16. linux网页打开慢的解决方法,腾讯所有网页打开很慢的解决方案
  17. 自知识蒸馏(知识蒸馏二)
  18. 【网络是怎么连接的】—— 1.1 生成 HTTP 请求消息
  19. 学人工智能有前途吗?人工智能前景-AI就业方向
  20. 编写优雅的JavaScript——前言

热门文章

  1. git push被拒绝_规范git项目提交并自动生成项目commit log
  2. 卷不动也得继续学!紧跟vue3的步伐,再来get一波进阶新特性!
  3. 计算机专业可以报考放射医学吗吗,文科生可以报考医学影像技术专业吗
  4. [MyBatisPlus]入门案例
  5. [RabbitMQ]MQ 的分类
  6. C++ class实现邻接矩阵存储的图(完整代码)
  7. 蓝桥杯2017初赛-外星日历-数论
  8. python如何加密字符串_Python实现对字符串的加密解密方法示例
  9. 2019-03-06-算法-进化(最接近的三数之和)
  10. HDU 6755 Fibonacci Sum(二次剩余 + 二项式展开)