zoukankan      html  css  js  c++  java
  • dubbo支持哪些通信协议和序列化协议

    dubbo支持的通信协议

    dubbo协议

      dubbo://192.168.0.1:20188

      默认就是走dubbo协议的,单一长连接,NIO异步通信,基于hessian作为序列化协议

      适用的场景就是:传输数据量很小(每次请求在100kb以内),但是并发量很高

     

      为了要支持高并发场景,一般是服务提供者就几台机器,但是服务消费者有上百台,可能每天调用量达到上亿次!此时用长连接是最合适的,就是跟每个服务消费者维持一个长连接就可以,可能总共就100个连接。然后后面直接基于长连接NIO异步通信,可以支撑高并发请求。

      否则如果上亿次请求每次都是短连接的话,服务提供者会扛不住。

      而且因为走的是单一长连接,所以传输数据量太大的话,会导致并发能力降低。所以一般建议是传输数据量很小,支撑高并发访问。

     

    rmi协议

      走java二进制序列化,多个短连接,适合消费者和提供者数量差不多,适用于文件的传输,一般较少用

     

    hessian协议

      走hessian序列化协议,多个短连接,适用于提供者数量比消费者数量还多,适用于文件的传输,一般较少用

     

    http协议

      走json序列化

     

    webservice

      走SOAP文本序列化

     

    dubbo支持的序列化协议

      dubbo实际基于不同的通信协议,支持hessian、java二进制序列化、json、SOAP文本序列化多种序列化协议。

      但是hessian是其默认的序列化协议。

    转自:中华石杉Java工程师面试突击

     

  • 相关阅读:
    vue-cli3配置开发环境和生产环境
    vue配置开发环境和生产环境
    js实现div拖拽互换位置效果
    axios用post提交的数据格式
    面试题会被问及哪些?(总结)
    深入理解vue
    nodejs 前端项目编译时内存溢出问题的原因及解决方案
    MUI框架开发HTML5手机APP(一)--搭建第一个手机APP
    关于if省略{}时的一些问题
    函数声明的两种形式的区别
  • 原文地址:https://www.cnblogs.com/mengchunchen/p/10075125.html
Copyright © 2011-2022 走看看