初学dubbo踩到的坑

最近在学习dubbo框架,在使用springboot整合dubbo的项目中遇到了一些问题,因此做一些记录,避免以后遇到同样的问题。

问题一:服务提供者项目启动后,服务没有注册服到zookeeper(zk已安装成功并且正常启动),启动日志中没有任何dubbo的日志输出,如图:

springboot版本为:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.9.RELEASE</version>
  </parent>

-------------------

出现问题的原因:

pom文件中添加的依赖不全,添加的dubbo依赖如下:

<dependency>
         <groupId>com.alibaba</groupId>
         <artifactId>dubbo</artifactId>
          <version>2.6.2</version>
     </dependency>

解决方案:使用springboot提供的dubbo启动器,里面包含所有dubbo需要的依赖(没有包含zkclient,需要手动添加),如:

<dependency>
        <groupId>com.alibaba.boot</groupId>
        <artifactId>dubbo-spring-boot-starter</artifactId>
        <version>0.1.0</version>
</dependency>

再次启动服务提供者的项目,这时启动日志已经有了dubbo的日志输出:如图

服务也成功的注册到了zookeeper,如图:

启动消费者项目时报错,信息如下:

一、Dubbo Config was overridden by externalized configuration {dubbo.application=id:dubbo-web name:dubbo-web, dubbo.protocal=id:dubbo name:dubbo port:666, dubbo.registry=id:my-reg address:zookeeper://192.168.75.128:2181}

二、Binding to target com.alibaba.boot.dubbo.autoconfigure.SingleDubboConfigBindingProperties@3e134896 failed:

Property: dubbo.application
Value: id:dubbo-web name:dubbo-web
Reason: Failed to convert property value of type 'java.lang.String' to required type 'com.alibaba.dubbo.config.ApplicationConfig' for property 'application'; nested exception is org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.String] to type [@org.springframework.boot.context.properties.NestedConfigurationProperty com.alibaba.dubbo.config.ApplicationConfig]

第一行的配置信息格式输出为:dubbo.application=id:dubbo-web 正确的格式输出应该是 dubbo.application.id=dubbo-web

导致该问题的出现原因是application.yml配置格式出错

dubbo:
   application:
      id:dubbo-web
      name:dubbo-web

值和冒号(:)之间要有一个空格,如:

dubbo:
   application:
      id: dubbo-web
      name: dubbo-web

重新启动项目成功,dubbo远程调用成功,如图:

本次项目代码下载链接:https://download.csdn.net/download/kangyuan520/10558698

本次springboot整合dubbo项目成功运行!end!

猜你喜欢

转载自blog.csdn.net/kangyuan520/article/details/81164235