分布式开发使用Dubbo时服务异常解决方法大全

1.确认注册中心(如zooleeper)及Dubbo是否开启与配置是否正确

在搭载Dubbo的服务器中 WEB-INF目录下dubbo.properties属性文件是否正确配置
dubbo.registry.address=zookeeper://xxx.xxx.xxx.xx:2181  为注册中的实际地址。

2.确认web应用配置文件是否与自己的Dubbo服务器连接上
如:

    <!-- 配置当前应用的名称 -->
    <dubbo:application name="webName"/>
  	<!-- 配置zookeeper作为注册中心,注册服务地址 -->
    <dubbo:registry protocol="zookeeper" address="xxx.xxx.xxx.xx:2181"/>
    <!-- 配置采用包扫描来引用服务,产生服务接口的代理对象 -->
    <dubbo:annotation package="xyz.pyg.manager.controller"/>

3.服务接口是否暴露

//指向继承的接口,注意:@Service导入的依赖包为:import com.alibaba.dubbo.config.annotation.Service;
    @Service(interfaceName = "xyz.lilei123.service.ParentService")
    @Transactional
    public class SonServiceImpl implements ParentService{} 

4.消费者注入依赖使用的注解是否正确

//由于web应用是通过Dubbo建立所以无法使用@AutoWired注解,使用的Dubbo提供@Reference注解方可注入
@Reference(timeout = 5000)
    private ParentService service;

猜你喜欢

转载自blog.csdn.net/weixin_44594056/article/details/88970038