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短连接,协议标准化且易读,容易对接外部系统,适用于上层业务模块
08、http协议和dubbo协议的区别相关推荐
- http协议及http协议和tcp协议的区别
http是应用层的协议,并且无连接,无状态的协议. http协议的特点: 1.支持c/s模式 2.简单快速:客户端向服务器端传送数据的时候,只需要发送请求方法和路径,请求方法有:post,get,he ...
- HTTP协议和HTTPS协议的区别
HTTP协议和HTTPS协议的区别 1.HTTP协议传输的数据都是未加密的,也就是明文的,使用HTTP协议传输隐私信息不安全: 2.HTTPS协议是由SSL(安全套接层,为网络通信提供安全及数据完整性 ...
- rs232接口_RS232协议和RS485协议的区别与应用,看这一篇就够了!
我们在弱电系统中经常会接触到很多通讯协议,如:RS232协议.RS422协议.RS485协议.韦根协议.TCP/IP协议等多种协议,今天为大家分享一下弱电工程中最为常用的RS232协议和RS485协议 ...
- TCP协议和UDP协议的区别及其应用
下面是TCP和UDP的简单程序: 简单的TCP网络程序 https://blog.csdn.net/qq_37941471/article/details/80738319 简单的UDP网络程序 ht ...
- jt808终端鉴权_驾培协议和jt808协议的区别 | 车载GPS和视频平台产品经理
交通部颁发的<机动车驾驶员计时培训系统平台技术规范>中的驾培TCP协议和jt808协议虽然很像,但有本质的不同,很多人以为就是部标808协议,这个认识是错误的,驾培协议是驾培协议,jt80 ...
- https协议和Http协议的区别
什么是HTTPS: HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息 ...
- TCP协议和UDP协议的区别
目录 一.简介UDP和TCP来源 OSI七层结构 TCP/IP协议模型 二.TCP协议: 1.TCP的功能: 2.UDP的代码实现: 3.TCP协议的组成: 4.TCP的连接管理:TCP的三次握手(建 ...
- RTMP协议和RTSP协议的区别
一.RTMP协议: 1.是流媒体协议 2.RTMP是Adobe的私有协议,没有完全公开 3.RTMP协议一般传输的是flv.f4v格式流 4.RTMP协议一般在TCP的一个通道传输命令和数据 二.RT ...
- github开源代码gpl协议和lgpl协议的区别
参考文章:关于开源许可 GPL 与 LGPL的区别 详细解释可看上文
最新文章
- activity的四种加载模式
- 同步等待 异步等待_异步/等待和承诺的解释
- IIS8 使用FastCGI配置PHP环境支持 过程详解
- Java多线程(2)—线程同步
- python3生成随机数_Python3.3中如何产生伪随机数
- 《面向对象程序设计》第一次作业
- (保守群组测试 非保守群组测试 二次重复测试 自适应二次重复测试)四种群体测试的C++代码
- require与include的区别
- Python3 爬虫实战 — 58同城武汉出租房【加密字体对抗】
- MongoDb 大数据查询优化、 MongoDB 索引、复合索引、唯一索引、 explain 分 析查询速度
- 空字符是什么类型_Redis是什么?看这一篇就够了!
- git提交远程报错[rejected] master - master (fetch first)
- JAVA线程池的创建
- Android关闭输入法键盘
- 《大数据之路:阿里巴巴大数据实践》-第1篇 数据技术篇 -第3章数据同步
- ubuntu安装homeassistant
- HM16.9 提取CU depth,cu partition可视化
- 八、Identity Card
- 从后端到前端的转变:如何选择框架?
- ssm+java计算机毕业设计英雄联盟俱乐部管理系统j4oh6(程序+lw+源码+远程部署)