dubbo服务发布 2.0版本

Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,并且本质上是个服务调用的东东,说白了就是个远程服务调用的分布式框架(告别Web Service模式中的WSdl,以服务者与消费者的方式在dubbo上注册)

前面讲到dubbo spi机制 这篇主要将如何发布服务

配置文件 

 

DubboBeanDefinitionParser 解析dubbo-server1.xml 文件 注入多大屏ioc容器中 被spring容器管理

ServiceBean 中的 export方法

再到 ServiceConfig     doExport() 方法

 

doExportUrls()方法

 

protocol.export() 方法 当前用到了扩展点 dubbo spi机制

private static final Protocol protocol  =(Protocol)ExtensionLoader.getExtensionLoader(Protocol.class).getAdaptiveExtension();

注意这里的protocol  返回的是 RegisterProtocol  中的export()

DubboProtocol 

 

 

Exchangers 类 bind方法

HeaderExchanger bind()

Transporters bind方法

NettyTransporter bind方法

NettyServer     doOpen 方法 真正的发布服务

从 RegisterProtocol - > Dubbo$Protocol -> ProtocolFilterWrapper  -> ProtocolListenerWrapper -> DubboProtocol -> Exchangers ->  HeaderExchanger -> Transporters ->  NettyTransporter -> NettyServer     服务发布 并注册到注册中心    

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值