本地暴露
上一篇中微服务架构之Dubbo服务发布(1)我们提到本地暴露,是在exportLocal(URL url)中
传进来的url如图所示
|
|
经过这段代码后
其中protocol.export的实现来自InjvmProtocol,在调用InjvmProtocol类的export方法之前会先调用ProtocolFilterWrapper类的export方法由JavassistProxyFactory提供的getInvoker方法返回的Invoker转化为Exporter。
|
|
流程图为:
这就是本地暴露的过程,那么如何测试本地暴露呢?我们需要这么配置,但之前要保证服务提供方与服务消费方启动在同一个 JVM。
服务消费方配置:
|
|
服务提供方配置:
|
|
从消费方到提供方,消费方主要会涉及Dubbo的服务引用,提供方主要会涉及Dubbo的服务发布,看完这2大块内容,就会明白本地暴露的消费流程。
远程暴露
首先我们接着看代码
|
|
经过上面代码后
其中protocol.export的实现来自RegistryProtocol,在调用RegisterProtocol类的export方法之前会先调用ProtocolFilterWrapper类的export方法, 将由JavassistProxyFactory提供的getInvoker方法返回的Invoker转化为Exporter。
|
|
流程图为: