Dubbo:xml配置标签,以及「标签属性」详解

一、总汇:

标签

用途

解释

<dubbo:service/>

服务配置

用于暴露一个服务,定义服务的元信息,一个服务可以用多个协议暴露,一个服务也可以注册到多个注册中心

<dubbo:reference/> 

引用配置

用于创建一个远程服务代理,一个引用可以指向多个注册中心

<dubbo:protocol/>

协议配置

用于配置提供服务的协议信息,协议由提供方指定,消费方被动接受

<dubbo:application/>

应用配置

用于配置当前应用信息,不管该应用是提供者还是消费者

<dubbo:module/>

模块配置

用于配置当前模块信息,可选

<dubbo:registry/>

注册中心配置

用于配置连接注册中心相关信息

<dubbo:monitor/>

监控中心配置

用于配置连接监控中心相关信息,可选

<dubbo:provider/>

提供方配置

当 ProtocolConfig 和 ServiceConfig 某属性没有配置时,采用此缺省值,可选

<dubbo:consumer/>

消费方配置

当 ReferenceConfig 某属性没有配置时,采用此缺省值,可选

<dubbo:method/>

方法配置

用于 ServiceConfig 和 ReferenceConfig 指定方法级的配置信息

<dubbo:argument/>

参数配置

用于指定方法参数配置

二、详解

1、dubbo:application 标签配置:应用信息配置

属性

类型

是否必填

缺省值

描述

兼容性

 

 

name

 

 

String

必填

当前应用名称,用于注册中心计算应用间依赖关系,注意:消费者和提供者应用名不要一样,你当前项目叫什么名字就填什么,和提供者消费者角色无关。

1.0.16以上

version

string

可选

当前应用的版本

2.2.0以上

owner

string

可选

应用负责人,用于服务治理,请填写负责人公司邮箱前缀

2.0.5以上

organization

string

可选

组织名称(BU或部门),用于注册中心区分服务来源,此配置项建议不要使用autoconfig,直接写死在配置中,比如china,intl,itu,crm,asc,dw,aliexpress等

2.0.0以上

architecture

string

可选

用于服务分层对应的架构。如,intl、china。不同的架构使用不同的分层。

2.0.7以上

environment

string

可选

应用环境,如:develop/test/product

2.0.0以上

compiler

string

可选

javassist

Java字节码编译器,可选:jdk或javassist

2.1.0以上

logger

string

可选

slf4j

日志输出方式,可选:slf4j,jcl,log4j,log4j2,jdk

2.2.0以上

2、dubbo:registry 配置标签:注册中心配置。

如果有多个不同的注册中心,可声明多个 <dubbo:registry> 标签,在 <dubbo:service> 或 <dubbo:reference> 的 registry 属性指定使用的注册中心。

属性

类型

是否必填

缺省值

描述

兼容性

id

string

可选

注册中心引用BeanId,可以在<dubbo:service registry="">或<dubbo:reference registry="">中引用此ID

1.0.16以上版本

address

string

必填

注册中心服务器地址,如果地址没有端口缺省为9090,同一集群内的多个地址用逗号分隔,如:ip:port,ip:port

1.0.16以上版本

protocol

string

可选

dubbo

注册中心地址协议

2.0.0以上版本

port

int

可选

9090

注册中心缺省端口,当address没有带端口时使用此端口做为缺省值

2.0.0以上版本

username

string

可选

登录注册中心用户名,如果注册中心不需要验证可不填

2.0.0以上版本

password

string

可选

登录注册中心密码,如果注册中心不需要验证可不填

2.0.0以上版本

transport

string

可选

netty

网络传输方式,可选mina,netty

2.0.0以上版本

timeout

int

可选

5000

注册中心请求超时时间(毫秒)

2.0.0以上版本

session

int

可选

60000

注册中心会话超时时间(毫秒),用于检测提供者非正常断线后的脏数据,比如用心跳检测的实现,此时间就是心跳间隔,不同注册中心实现不一样。

2.1.0以上版本

file

string

可选

使用文件缓存注册中心地址列表及服务提供者列表,应用重启时将基于此文件恢复,注意:两个注册中心不能使用同一文件存储

2.0.0以上版本

wait

int

可选

0

停止时等待通知完成时间(毫秒)

2.0.0以上版本

check

boolean

可选

true

注册中心不存在时,是否报错

2.0.0以上版本

register

boolean

可选

true

是否向此注册中心注册服务,如果设为false,将只订阅,不注册

2.0.5以上版本

subscribe

boolean

可选

true

是否向此注册中心订阅服务,如果设为false,将只注册,不订阅

2.0.5以上版本

dynamic

boolean

可选

true

服务是否动态注册,如果设为false,注册后将显示为disable状态,需人工启用,并且服务提供者停止时,也不会自动取消注册,需人工禁用。

2.0.5以上版本

group

string

可选

dubbo

服务注册分组,跨组的服务不会相互影响,也无法相互调用,适用于环境隔离。

2.0.5以上版本

 3、dubbo:protocol 配置标签:服务提供者协议配置。

可以声明多个 <dubbo:protocol> 标签,并在 <dubbo:service> 中通过 protocol 属性指定使用的协议。

属性

类型

必填

缺省值

描述

兼容性

id

string

可选

dubbo

协议BeanId,可以在<dubbo:service protocol="">中引用此ID,如果ID不填,缺省和name属性值一样,重复则在name后加序号。

2.0.5以上版本

name

string

必填

dubbo

协议名称

2.0.5以上版本

port

int

可选

 

服务端口

2.0.5以上版本

host

string

可选

本机IP

-服务主机名,多网卡选择或指定VIP及域名时使用,为空则自动查找本机IP,-建议不要配置,让Dubbo自动获取本机IP

2.0.5以上版本

threadpool

string

可选

fixed

线程池类型,可选:fixed/cached

2.0.5以上版本

threads

int

可选

200

服务线程池大小(固定大小)

2.0.5以上版本

iothreads

int

可选

cpu个数+1

io线程池大小(固定大小)

2.0.5以上版本

accepts

int

可选

0

服务提供方最大可接受连接数

2.0.5以上版本

payload

int

可选

8388608(=8M)

请求及响应数据包大小限制,单位:字节

2.0.5以上版本

codec

string

可选

dubbo

协议编码方式

2.0.5以上版本

serialization

string

可选

 

协议序列化方式,当协议支持多种序列化方式时使用,比如:dubbo协议的dubbo,hessian2,java,compactedjava,以及http协议的json等

2.0.5以上版本

accesslog

string/

boolean

可选

设为true,将向logger中输出访问日志,也可填写访问日志文件路径,直接把访问日志输出到指定文件

2.0.5以上版本

path

string

可选

提供者上下文路径,为服务path的前缀

2.0.5以上版本

transporter

string

可选

netty

协议的服务端和客户端实现类型,比如:dubbo协议的mina,netty等,可以分拆为server和client配置

2.0.5以上版本

server

string

可选

 

协议的服务器端实现类型,比如:dubbo协议的mina,netty等,http协议的jetty,servlet等

2.0.5以上版本

client

string

可选

netty

协议的客户端实现类型,比如:dubbo协议的mina,netty等

2.0.5以上版本

dispatcher

string

可选

all

协议的消息派发方式,用于指定线程模型,比如:dubbo协议的all, direct, message, execution, connection等

2.1.0以上版本

queues

int

可选

0

线程池队列大小,当线程池满时,排队等待执行的队列大小,建议不要设置,当线程池满时应立即失败,重试其它服务提供机器,而不是排队,除非有特殊需求。

2.0.5以上版本

charset

string

可选

UTF-8

序列化编码

2.0.5以上版本

buffer

int

可选

8192

网络读写缓冲区大小

2.0.5以上版本

heartbeat

int

可选

0

心跳间隔,对于长连接,当物理层断开时,比如拔网线,TCP的FIN消息来不及发送,对方收不到断开事件,此时需要心跳来帮助检查连接是否已断开

2.0.10以上版本

telnet

string

可选

所支持的telnet命令,多个命令用逗号分隔

2.0.5以上版本

register

boolean

可选

true

该协议的服务是否注册到注册中心

2.0.8以上版本

contextpath

String

可选

缺省为空串

2.0.6以上版本

4、所有标签详情均在dubbo官网-参考手册-xml标签

dubbo:provider | Apache Dubbo

https://dubbo.apache.org/zh/docs/references/xml/dubbo-provider/

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值