• Mystery森淼,🍃
    2023-04-01 来自北京
    老师,服务的暴露应该怎么理解呢,

    作者回复: 你好,Mystery森淼,🍃:粗俗的理解就是开启本地端口服务,让别人能通过网络进行调用。Dubbo 的服务暴露,其本意就是让服务端编写的接口,在利用 Socket 开启的端口服务,能够被其他进程通过【IP + 端口 + 接口】发起通信调用。

    
    1
  • w 🍍
    2023-06-13 来自浙江
    protocolSPI默认是dubbo,那么是怎么找到injvm的

    作者回复: 你好,w 🍍:在 org.apache.dubbo.config.ServiceConfig#exportLocal 方法里面有个 setProtocol("injvm") 预先导出本地的一份,然后在 org.apache.dubbo.config.ReferenceConfig#createProxy 方法中的 shouldJvmRefer 子方法中有对是否是 injvm 的判断。

    共 2 条评论
    
  • Geek_10086
    2023-02-24 来自河北
    老师,请问 serviceBean怎么触发的 serviceConfig#exprot方法,一直没有找到

    作者回复: 你好,Geek_10086:【org.apache.dubbo.config.spring.context.DubboDeployApplicationListener#onApplicationEvent】 --> 【org.apache.dubbo.config.deploy.DefaultModuleDeployer#start】 --> 【org.apache.dubbo.config.deploy.DefaultModuleDeployer#exportServices】,然后你会看到【configManager.getServices()】这个里面的元素对象就是【serviceBean】对象。

    共 3 条评论
    
  • 阿昕
    2023-02-07 来自浙江
    本地导出是为了开启本地协议端口的netty服务,远程导出是为了写入数据到注册中心,可以这样理解吗?

    作者回复: 你好,阿昕:如果是按照我在“总结”环节的那张图来讲的话,本地导出是当系统调用自己系统的接口时,为了不发起远程调用,就引出了本地导出这个功能。 而远程导出,就是开始 Netty 服务,以及写注册中心。

    
    