使用dubbo的一些积累

问题:

1、项目名称最好不要有provider consumer之类的信息,一个项目可以是服务提供者也可以同时是消费者


<dubbo:application>

name

application

string

必填

 

服务治理

当前应用名称,用于注册中心计算应用间依赖关系,注意:消费者和提供者应用名不要一样,此参数不是匹配条件,你当前项目叫什么名字就填什么,和提供者消费者角色无关,比如:kylin应用调用了morgan应用的服务,则kylin项目配成kylin,morgan项目配成morgan,可能kylin也提供其它服务给别人使用,但kylin项目永远配成kylin,这样注册中心将显示kylin依赖于morgan


2、owner可以设置成当前维护该子系统的人的前缀【建议】

<dubbo:application>

owner

owner

string

可选

 

服务治理

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


3、如果出现由于docker或者私有云网络环境造成application之间无法连通的问题,可以在dubbo:protocol中的host和port中指定监听的端口,但首先要能够监听到这个端口,可以用于解决双网卡问题。这个方案需要修改配置,可以考虑提供javaagent扩展的方式在运行时指定。


<dubbo:protocol>

port

<port>

int

可选

dubbo协议缺省端口为20880,rmi协议缺省端口为1099,http和hessian协议缺省端口为80 

如果配置为-1 或者 没有配置port,则会分配一个没有被占用的端口。Dubbo 2.4.0+,分配的端口在协议缺省端口的基础上增长,确保端口段可控。

服务发现

服务端口

2.0.5以上版本

<dubbo:protocol>

host

<host>

string

可选

自动查找本机IP

服务发现

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



4、当application同时具备provider和consumer身份时,可能会出现启动循环依赖问题,可以在dubbo:consumer设置启动不检查依赖

<dubbo:consumer>

check

check

boolean

可选

true

服务治理

启动时检查提供者是否存在,true报错,false忽略


5、async问题:

<dubbo:service>

async

async

boolean

可选

false

性能调优

是否缺省异步执行,不可靠异步,只是忽略返回值,不阻塞执行线程

<dubbo:reference>

async

async

boolean

可选

缺省使用<dubbo:consumer>的async

性能调优

是否异步执行,不可靠异步,只是忽略返回值,不阻塞执行线程

callback与async功能正交分解:

async=true,表示结果是否马上返回.

onreturn 表示是否需要回调.

组合情况:(async=false 默认)

异步回调模式:async=true onreturn="xxx"

同步回调模式:async=false onreturn="xxx"

异步无回调 :async=true

同步无回调 :async=false

6、请求过大的问题:

<dubbo:protocol>

payload

payload

int

可选

88388608(=8M)

性能调优

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

7、服务一旦注册到服务中心,调用时并不一定会通过本地jar或war包,可能在1.18的A application调用自己的一个服务会调用到1.19的A application的provider

8、validation问题:

<dubbo:consumer>

validation

validation

boolean

可选

 

服务治理

是否启用JSR303标准注解验证,如果启用,将对方法参数上的注解进行校验

<dubbo:reference>

validation

validation

boolean

可选

 

服务治理

是否启用JSR303标准注解验证,如果启用,将对方法参数上的注解进行校验

Dubbo2.1.0及其以上版本支持

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值