NutzCN Logo
问答 关于dubbo服务之间的调用问题
发布于 128天前 作者 daydayup 572 次浏览 复制 上一个帖子 下一个帖子
标签: nutzwk

我举个例子
假如 有两个服务 MemberService OrderService

这两个服务之间要互相调用的话 ,一个服务还没启动的话,另一个服务是用不了的。像这样的话 要怎么解决

11 回复

启动时候不要调用另外一个服务就没问题,确保启动过程不依赖其他服务

@IocBean(args = {"refer:dao"})
@Service(interfaceClass=MemberService.class)
public class MemberServiceImpl extends BaseServiceImpl<Member> implements MemberService {
    public MemberServiceImpl(Dao dao) {
        super(dao);
    }

    @Inject
    private RedisService redisService;

    @Inject
    @Reference
    private CmsTestService cmsTestService;
@IocBean(args = {"refer:dao"})
@Service(interfaceClass = CmsTestService.class)
public class CmsTestServiceImpl extends BaseServiceImpl<Cms_test> implements CmsTestService {
    public CmsTestServiceImpl(Dao dao) {
        super(dao);
    }

    @Inject
    private RedisService redisService;

    @Inject
    @Reference
    private MemberService memberService;

假如这两个服务需要互相依赖调用的话那是启动不了的吧?有什么方法可以解决呢

解决办法就是启动的时候不要依赖其他服务

是不是就是不能互相依赖

我记得 dubbo不是有个检查是否依赖开启的配置吗

能依赖,但启动阶段不能调用

项目启动的话不是要扫描吗


dubbo.reference.com.foo.BarService.check=false dubbo.reference.check=false dubbo.consumer.check=false dubbo.registry.check=false

或者

    @Reference(check = false)

这些都是dubbo的范畴,建议你查查dubbo文档

添加回复
请先登陆
回到顶部