首页 > 代码库 > dubbo 各功能模块介绍及配置方式

dubbo 各功能模块介绍及配置方式

基于sping和dubbo.properties的配置实现方式:

=================================================================

注册中心参考手册

<dubbo:registry/>

注册中心配置:
配置类:com.alibaba.dubbo.config.RegistryConfig
说明:如果有多个不同的注册中心,可以声明多个<dubbo:registry>标签,并在<dubbo:service>或<dubbo:reference>的registry属性指定使用的注册中心。

标签属性对应URL参数类型是否必填缺省值作用描述兼容性
<dubbo:registry>id string可选 配置关联注册中心引用BeanId,可以在<dubbo:service registry="">或<dubbo:reference registry="">中引用此ID1.0.16以上版本
<dubbo:registry>address<host:port>string必填 服务发现注册中心服务器地址,如果地址没有端口缺省为9090,同一集群内的多个地址用逗号分隔,如:ip:port,ip:port,不同集群的注册中心,请配置多个<dubbo:registry>标签1.0.16以上版本
<dubbo:registry>protocol<protocol>string可选dubbo服务发现注同中心地址协议,支持dubbo, http, local三种协议,分别表示,dubbo地址,http地址,本地注册中心2.0.0以上版本
<dubbo:registry>port<port>int可选9090服务发现注册中心缺省端口,当address没有带端口时使用此端口做为缺省值2.0.0以上版本
<dubbo:registry>username<username>string可选 服务治理登录注册中心用户名,如果注册中心不需要验证可不填2.0.0以上版本
<dubbo:registry>password<password>string可选 服务治理登录注册中心密码,如果注册中心不需要验证可不填2.0.0以上版本
<dubbo:registry>transportregistry.transporterstring可选netty性能调优网络传输方式,可选mina,netty2.0.0以上版本
<dubbo:registry>timeoutregistry.timeoutint可选5000性能调优注册中心请求超时时间(毫秒)2.0.0以上版本
<dubbo:registry>sessionregistry.sessionint可选60000性能调优注册中心会话超时时间(毫秒),用于检测提供者非正常断线后的脏数据,比如用心跳检测的实现,此时间就是心跳间隔,不同注册中心实现不一样。2.1.0以上版本
<dubbo:registry>fileregistry.filestring可选 服务治理使用文件缓存注册中心地址列表及服务提供者列表,应用重启时将基于此文件恢复,注意:两个注册中心不能使用同一文件存储2.0.0以上版本
<dubbo:registry>waitregistry.waitint可选0性能调优停止时等待通知完成时间(毫秒)2.0.0以上版本
<dubbo:registry>checkcheckboolean可选true服务治理注册中心不存在时,是否报错2.0.0以上版本
<dubbo:registry>registerregisterboolean可选true服务治理是否向此注册中心注册服务,如果设为false,将只订阅,不注册2.0.5以上版本
<dubbo:registry>subscribesubscribeboolean可选true服务治理是否向此注册中心订阅服务,如果设为false,将只注册,不订阅2.0.5以上版本
<dubbo:registry>dynamicdynamicboolean可选true服务治理服务是否动态注册,如果设为false,注册后将显示后disable状态,需人工启用,并且服务提供者停止时,也不会自动取消册,需人工禁用。2.0.5以上版本

  • 注册中心参考手册    推荐使用Zookeeper注册中心
    • Multicast注册中心
    • Zookeeper注册中心
    • Redis注册中心
    • Simple注册中心
    • Simple监控中心

zookeeper注册中心又有两种client实现: 支持zkclient(默认,从2.2.0版本开始缺省为zkclient实现)和curator(使用时需显示设置)两种Zookeeper客户端实现。

如果需要改为curator实现,请配置:<dubbo:registry ... client="curator" />

            或:dubbo.registry.client=curator

            或:zookeeper://10.20.153.10:2181?client=curator

注意区分 dubbo.registry.client不同于dubbo.registry.address!!

dubbo.registry.client默认使用zkclient实现时,可以不用配置。  

 

dubbo.registry.address总是需要进行配置的:

Zookeeper单机配置:  <dubbo:registry address="zookeeper://10.20.153.10:2181" />

Zookeeper集群配置:  <dubbo:registry address="zookeeper://10.20.153.10:2181?backup=10.20.153.11:2181,10.20.153.12:2181" />

 

=================================================================

服务 容器 

服务容器只是一个简单的Main方法,并加载一个简单的Spring容器,用于暴露服务。

Spring Container
默认 加载META-INF/spring目录下的所有Spring配置
配置:(配在java命令-D参数或者dubbo.properties中)
dubbo.spring.config=classpath*:META-INF/spring/abc.xml ----配置spring配置加载位置

Log4j Container
自动配置log4j的配置,在多进程启动时,自动给日志文件按进程分目录。
配置:(配在java命令-D参数或者dubbo.properties中)
dubbo.log4j.file=/foo/bar.log ----配置日志文件路径
dubbo.log4j.level=WARN ----配置日志级别

启动 容器

缺省只加载spring,通过classpath下的dubbo.properties配置传入要加载的容器:

dubbo.container=spring,log4j

 

http://dubbo.io/User+Guide-zh.htm#UserGuide-zh-%E6%9C%8D%E5%8A%A1%E5%AE%B9%E5%99%A8

=================================================================

<dubbo:monitor/>

监控中心配置:

标签         属性 对应URL参数   类型 是否必填 缺省值 作用 描述 兼容性
<dubbo:monitor> protocol protocol   string 可选   dubbo 服务治理 监控中心协议,如果为protocol="registry",表示从注册中心发现监控中心地址,否则直连监控中心。 2.0.9以上版本
<dubbo:monitor> address <url> string 可选 N/A 服务治理 直连监控中心服务器地址,address="10.20.130.230:12080" 1.0.16以上版本

eg:

# 监控中心
#dubbo.monitor.protocol=registry    #表示从注册中心发现监控中心地址
dubbo.monitor.address=127.0.0.1:2181 #直连监控中心

=================================================================

 

=================================================================

 

dubbo 各功能模块介绍及配置方式