zoukankan      html  css  js  c++  java
  • dubbo多协议支持,及协议特点

     Dubbo服务除了本身自己的Dubbo协议外,Dubbo框架还支持另外8中服务暴露协议:

      RMI协议、Hessian协议、HTTP协议、WebService协议、Thrift协议、Memcached协议、Redis协议、

           Rest协议。但在实际生产中,使用最多的就是Dubbo服务暴露协议。

    各个协议的特点

    建议:小数据大并发使用dubbo ,大数据小并发使用其他。【根据实际情况而定】

    1、dubbo协议

    • dubbo默认传输协议
    • 连接方式:单连接
    • 传输协议:长连接
    • 传输方式:NIO异步传输
    • 适用范围:传入传出参数数据包较小(建议小于100K),消费者比提供者个数多,单一消费者
    •                   无法压满提供者,尽量不要用dubbo协议传输大文件或超大字符串

    2、rmi协议

    • 采用JDK标准的java.rmi.*实现
    • 连接个数:多连接
    • 连接方式:短连接
    • 传输协议:TCP
    • 传输方式:BIO同步传输
    • 适用范围:传入传出参数数据包大小混合,消费者与提供者个数差不多,可传文件

    3、hession协议

    • 连接个数:多连接
    • 连接方式:短连接
    • 传输协议:HTTP
    • 传输方式:BIO同步传输
    • 适用范围:传入传出参数数据包较大,提供者比消费者个数多,提供者抗压能力较大,可传文件

    4、http协议

    • 连接个数:多连接
    • 连接方式:短连接
    • 传输协议:HTTP
    • 传输方式:BIO同步传输
    • 适用范围:传输传出参数数据包大小混合,提供者比消费者个数多,可用浏览器查看,可用表单
    •                   或URL参数参数,暂不支持传文件

    5、webService协议

    • 连接个数:多连接
    • 连接方式:短连接
    • 传输协议:HTTP
    • 传输方式:BIO同步传输
    • 适用范围:系统集成,跨语言调用

    6、thrift协议

      Thrift是Facebook捐给Apache的一个RPC框架,其消息传递采用的协议即为thrift协议。

          当前dubbo支持的thrift协议是对thrift原生协议的扩展。Thrift协议不支持null值的传递。

    7、memcached协议与redis协议

      它们都是高效的KV缓存服务器。它们会对传输的数据使用相应的技术进行缓存。

    8、rest协议

      若需要开发具有RESTful风格的服务,则需要使用该协议

     

     

     

  • 相关阅读:
    linux的ip配置
    脚本抓取mongoDB慢查询进程,生成kill语句,快速恢复mongodb CPU打满情况
    python脚本生成sql分库分表语句
    脚本获取rds慢日志
    问题反馈小平台实现 ----python练习
    python脚本 监控MySQL slave 状态
    传统复制的复制结构之间转换
    python判断合法IP并区分内网和外网地址
    ELK单台日志收集系统的搭建
    网站程序文件增量更新脚本
  • 原文地址:https://www.cnblogs.com/codelives/p/13639894.html
Copyright © 2011-2022 走看看