Dubbo实践笔记

注意的地方

  1. 默认情况下,cluster=failover、retries=2,意为失败重试两次,不包含原生调用。如需配置不重试,需设置retries=-1,或者使用failfast(快速失败)模式
  2. 如果Dubbo接口嵌套Dubbo接口,比如A程序调用B接口,B接口实现中调用C接口。如果按默认重试2次,全部调用失败情况下,最终调用C接口3 * 3 = 9次。我们在Dubbo接口嵌套情况下一般设置为不重试
  3. 配置覆盖的规则:(1)方法配置优先级大于接口配置;(2)消费端配置优先级大于提供端配置。规则思路在于,提供端更了解服务的性能,理应由服务端配置的,但仍提供消费端覆盖配置。官方文档描述见此

Dubbo协议

Dubbo协议是推荐使用的协议,因其单一长连接和NIO异步通讯的特性适用于小数据量大并发的调用。

如果你们消费者数量远大于提供数数量(谁不是呢?哈哈),而又是小数据量的调用居多,就用此协议吧。

官方文档描述见此

常见的默认配置

  1. dubbo.service.timeout,默认超时时间为1000毫秒
  2. dubbo.service.cluster,默认为failover,失败重试
  3. dubbo.service.retries,默认为2,不含原生调用
  4. dubbo.service.loadbalance,默认为random,随机
  5. dubbo.service.proxy,默认生成动态代理方式为javasisit
  6. dubbo.protocol.name,默认为dubbo
  7. dubbo.protocol.payload,默认为88388608(8M),默认请求或响应数据包的大小为8M
  8. dubbo.protocol.codec,默认协议编码方式为dubbo
  9. dubbo.protocol.serialization,dubbo协议默认为hessian2,rmi默认为java,http默认为json

参考的文章

Dubbo官方用户指南

posted @   nick_huang  阅读(2004)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
历史上的今天:
2015-02-09 数据库事务的特性(ACID)
点击右上角即可分享
微信分享提示