前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >dubbo源码之rpc协议介绍

dubbo源码之rpc协议介绍

作者头像
山行AI
发布2019-07-12 15:25:39
9560
发布2019-07-12 15:25:39
举报
文章被收录于专栏:山行AI山行AI

1. protocol协议的加载入口

2. dubbo 中的protocol及SPI拓展点:

dubbo中已经实现的protocol主要如下图

接下来介绍主要的几个protocol。

2.1 com.alibaba.dubbo.registry.integration.RegistryProtocol

这个protocol主要是管理dubbo的服务注册,管理dubbo与注册中心之间的交互:

2.2 dubbo=com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol

是dubbo默认的protocol,主要用于创建ExchangeServer和ExchangeClient 目前dubbo已经实现的server主要有:

长连接部分主要有netty和mina,具体使用的哪个是通过spi transporter拓展文件来指定,netty为默认的:

2.3 rmi=com.alibaba.dubbo.rpc.protocol.rmi.RmiProtocol

使用的是java的rmi机制进行直连通信。

2.4 hessian=com.alibaba.dubbo.rpc.protocol.hessian.HessianProtocol

使用的是HessianSkeleton进行通信,注意这里的hessian和hessian序列化不是一个意思

2.5 com.alibaba.dubbo.rpc.protocol.http.HttpProtocol

  • server端实现的是HttpServer,主要的实现有:
  • client端实现主要有httpUrlConnection和commons包中的CommonsHttpInvokerRequestExecutor

2.6 其他的protocol

  • com.alibaba.dubbo.rpc.protocol.webservice.WebServiceProtocol:webservice协议的实现
  • thrift=com.alibaba.dubbo.rpc.protocol.thrift.ThriftProtocol:thrift协议
  • memcached=com.alibaba.dubbo.rpc.protocol.memcached.MemcachedProtocol:memcached协议
  • redis=com.alibaba.dubbo.rpc.protocol.redis.RedisProtocol:redis协议
  • rest=com.alibaba.dubbo.rpc.protocol.rest.RestProtocol:rest协议

3. dubbo的序列化

这里顺便提一下dubbo的序列化:

com.alibaba.dubbo.common.Constants#DEFAULTREMOTINGSERIALIZATION中显示的默认的序列化方式是hessian2:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开发架构二三事 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. protocol协议的加载入口
  • 2. dubbo 中的protocol及SPI拓展点:
    • 2.1 com.alibaba.dubbo.registry.integration.RegistryProtocol
      • 2.2 dubbo=com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol
        • 2.3 rmi=com.alibaba.dubbo.rpc.protocol.rmi.RmiProtocol
          • 2.4 hessian=com.alibaba.dubbo.rpc.protocol.hessian.HessianProtocol
            • 2.5 com.alibaba.dubbo.rpc.protocol.http.HttpProtocol
              • 2.6 其他的protocol
              • 3. dubbo的序列化
              相关产品与服务
              文件存储
              文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档