使用dubbo的一些积累
来源:互联网 发布:软件app开发 编辑:程序博客网 时间:2024/05/17 01:42
问题:
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及其以上版本支持
- 使用dubbo的一些积累
- js使用中的一些自己的积累
- 在使用stl时的一些积累
- Linux日常使用的一些积累
- 关于MediaPlayer使用的一些积累
- 使用json_decode()的一些小积累
- sqlite使用的一些技术积累
- ubuntu一些使用积累
- c# 的一些积累
- perl的一些积累
- mysql的一些积累
- js的一些积累
- css的一些积累
- dubbo 使用学习五(dubbo开发中使用到的一些服务配置方式)
- 使用springmvc mybatis moven dubbo 遇到的一些问题
- 关于在工作中使用dubbo和zookeeper的一些理解
- dubbo开发中使用到的一些服务配置方式
- 关于使用Artery插件的一些积累1
- suse LInux 网络ip设置
- report代码分析1--AdjacencyGraphvizReport
- Rational Rose Enterprise Edition2003 版本,64位也可以安装成功
- SublimeText下如何安装插件
- Python shutil模块
- 使用dubbo的一些积累
- Linux文件目录/etc/init和/etc/init.d的前世今生
- C++ Primer 笔记
- Java单机爬虫
- Quartz实现的job接口无法注入实例bean
- 《C语言入门经典》Ivor Horton第九章练习题
- hdu 1856 More is better 并查集
- 深入学习one
- 导航控制器