dubbo消费方需要配置dubbo协议和端口吗

img


dubbo消费方需要配置dubbo协议以及dubbo端口号吗?我看不配置也能调用的;

对的,你说的没错,在Spring Boot项目中,Dubbo消费方也同样不需要配置Dubbo协议和Dubbo端口号,Dubbo会自动从Dubbo注册中心获取提供方的IP和端口号进行通信。但是,Dubbo消费方需要在application.properties或application.yml文件中配置

# Dubbo注册中心地址
dubbo.registry.address=zookeeper://127.0.0.1:2181

这里的dubbo.registry.address属性配置的就是Dubbo注册中心的地址,Spring Boot启动Dubbo消费方时,会自动连接并从注册中心获取提供方的IP和端口号进行通信。因此,即使不配置Dubbo协议和Dubbo端口号,Dubbo消费方仍能够正常调用Dubbo提供方的服务。

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇博客也许可以解决你的问题👉 :dubbo消费端如何找到服务端对象,进行方法调用的
  • 除此之外, 这篇博客: dubbo面试题中的 Dubbo 支持哪些通信协议? 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    Dubbo 目前支持如下 9 种通信协议:

    • 【重要】dubbo:// ,默认协议。参见
    《Dubbo 用户指南 —— dubbo://》 。
  • 【重要】rest:// ,贡献自 Dubbox ,目前最合适的 HTTP Restful API 协议。参见 《Dubbo 用户指南 —— rest://》 。
  • rmi:// ,参见 《Dubbo 用户指南 —— rmi://》 。
  • webservice:// ,参见 《Dubbo 用户指南 —— webservice://》 。
  • hessian:// ,参见 《Dubbo 用户指南 —— hessian://》 。
  • thrift:// ,参见 《Dubbo 用户指南 —— thrift://》 。
  • memcached:// ,参见 《Dubbo 用户指南 —— memcached://》 。
  • redis:// ,参见 《Dubbo 用户指南 —— redis://》 。
  • http:// ,参见 《Dubbo 用户指南 —— http://》 。注意,这个和我们理解的 HTTP 协议有差异,而是 Spring 的 HttpInvoker 实现。

实际上,社区里还有其他通信协议正处于孵化:

😈 每一种通信协议的实现,在 《精尽 Dubbo 源码解析》 中,都有详细解析。

另外,在 《Dubbo 用户指南 —— 性能测试报告》 中,官方提供了上述协议的性能测试对比。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^