• 08、http协议和dubbo协议的区别


    一、http协议介绍

    HTTP是应用层协议,同其他应用层协议一样,是为了实现某一类具体应用的协议,并由某一运行在用户空间的应用程序来实现其功能。HTTP是一种协议规范,这种规范记录在文档上,为真正通过HTTP进行通信的HTTP的实现程序。
    HTTP是基于B/S架构进行通信的,而HTTP的服务器端实现程序有httpd、nginx等,其客户端的实现程序主要是Web浏览器,例如Firefox、Internet Explorer、Google Chrome、Safari、Opera等,此外,客户端的命令行工具还有elink、curl等。Web服务是基于TCP的,因此为了能够随时响应客户端的请求,Web服务器需要监听在80/TCP端口。这样客户端浏览器和Web服务器之间就可以通过HTTP进行通信了

    二、dubbo介绍

    Dubbo是 Alibaba 开源的分布式服务框架远程调用框架,在网络间传输数据,就需要通信协议和序列化。
    Dubbo支持dubbo、rmi、hessian、http、webservice、thrift、redis等多种协议,但是Dubbo官网是推荐我们使用Dubbo协议的,默认也是用的dubbo协议。

    三、http协议和dubbo协议的区别

    http协议和dubbo协议的区别主要有三点:

    • 协议层区别
    • socket层区别
    • 安全不一样

    协议层区别

    HTTP ,HTTPS 使用的是 应用层协议
    应用层协议:定义了用于在网络中进行通信和传输数据的接口
    DUBBO接口使用的是 TCP/IP是传输层协议 传输层协议:管理着网络中的端到端的数据传输
    决定了dubbo协议比http协议要快

    socket层区别

    dubbo默认使用socket长连接,即首次访问建立连接以后,后续网络请求使用相同的网络通道
    http1.1协议默认使用短连接,每次请求均需要进行三次握手,而http2.0协议开始将默认socket连接改为了长连接

    安全方面

    dubbo设计之初基本都是考虑内网通讯,安全上基本没什么考虑,比http的安全差远了。

    • 当前我们也可以做一些针对应用权限校验或者ip校验的。

    特点

    rpc长连接、传输效率较高,可定制化路由,适用于内部系统互联;

    http短连接,协议标准化且易读,容易对接外部系统,适用于上层业务模块

  • 相关阅读:
    css 命名规则
    一文带你读懂PyQt:用Python做出与C++一样的GUI界面应用程序
    Windows操作系统下用vmware虚拟ubuntu系统测试USB IC卡读写器的说明
    新时代博物馆运营的智能管理与控制
    nat的基础配置(动态nat,nat server)
    成都力寰璨泓科技有限公司抖音小店品质保障
    SQL之Case When用法详解
    node笔记记录28aynsc和await之3
    [LNOI2022] 吃(数学+贪心)
    认证学习1 - 概要知识
  • 原文地址:https://blog.csdn.net/web15085599741/article/details/126325302