简单一点,HTTP是协议,RPC是概念!RPC可以基于HTTP协议(feign)、TCP协议(netty)、RMI协议(soap)和web服务(XML-RPC)框架实现。在传输过程中,由于序列化方法的不同,也出现了一些框架和协议,如Dubbo中的Dubbo协议、grpc protobuf序列化协议等。实际上,它们都是基于远程调用的概念。什么是远程呼叫?
关键是RPC是远程调用。远程调用是客户端通过上述协议向服务器发送接口、参数、参数类型、方法、返回值、返回值类型等(称为方法签名),通知服务器要调用的接口方法。这个过程就是RPC的实现过程!HTTP和RPC是两码事
!在性能方面,HTTP本身是基于TCP协议的,属于应用层协议,所以HTTP协议本身在实现过程中会占用大量的资源(内存、带宽等)。在性能方面,它肯定不如直接通过TCP实现的RPC协议快。不管HTTP有多优化,它绝对没有TCP那么快!另一方面,TCP依赖于字节码。目前常用的是将客户端调用的接口信息以序列化的方式发送到服务器端。序列化框架包括许多内容(Hession、protobuf、kryo等)。Kryo具有最高的序列化性能,protobuf具有序列化后最小的字节码)。序列化后的字节码越小,占用的带宽越小,序列化时间越长,线程IO延迟越短,线程IO延迟越小。因此,在具体的应用层,有很多技术可以讨论。您可以根据自己的硬件能力选择相应的技术
!欢迎热爱科技的人们来探索
原因很简单:
1、JSON是JavaScript本机支持,没有外部依赖项
2、JSON具有人眼可读性
3、开发人员懒惰
关于序列化协议和框架,估计可以创建一个百科全书,如:XML、JSON、bson、Hessian、,协议缓冲区…
有很多不受欢迎的,排名不分先后。
虽然有各种各样的协议和框架,但序列化本质上可以分为两种类型:
二进制协议的优点是体积小、效率高。例如,协议缓冲区可以用来将数据压缩成位,序列化和反序列化具有良好的性能,非常适合各种系统通信和接口调用。
但问题也在这里,二进制数据几乎没有可读性,所以在程序的开发和调试中,更让程序员痛苦,尤其是频繁变化的数据结构。
文本协议恰恰相反,数据量大,性能差,但能满足可读性要求。例如,我们可以很容易地理解JSON或人肉结构数据的一部分。对于快速开发和web开发来说,它可以提高开发效率,开发人员不必过于关注协议或框架,只关注业务。
我的观点如下:
1。对于具有稳定服务和高性能要求的场景,应优先考虑二进制序列化协议,如协议缓冲区
2。对于性能要求低、业务更改频繁的场景,应优先考虑JSON和XML等文本协议
区别:
Dubbo默认协议:
单TCP长连接,Hessian二进制序列化和NiO异步通信
适用于小数据包和大并发服务调用,并且服务使用者的数量远远大于服务提供者的数量
不适用于传输大数据包
Hessian协议:
底层HTTP通信,servlet公开服务,Dubbo默认嵌入式jetty作为服务器实现
可以与本机Hessian服务进行互操作
通信效率高于WebService和Java可序列化接口应针对自身的可序列化参数和返回值,以及list、map、,数字、日期、日历等
适合传输大数据包,提供商多于消费者,提供商压力更大。
管理信息系统与网站建设有什么区别?网站建设注重前台信息的展示,注重网页布局、链接架构、信息集成、用户交互和用户体验。是一个比较复杂的信息交互过程设计。管理信息系统以数据采集和处理为核心,根据实际需要生成各种报表。还要考虑信息安全、存储和维护
虚拟主机是什么概念?虚拟服务器定义为web服务器或web服务器。虚拟主机的实现方法有三种:基于IP的方法、基于主机名的方法和基于端口的方法。(1) 基于IP的方法:在服务器中绑定多个IP,然后配置web服务器将多个网站绑定到不同的IP。访问
怎样建一个网站?普通网站的建设费用和维护费用是多少?域名基本免费,只需要一个服务器。以阿里巴巴云和腾讯云为例。最便宜的网站服务器价格也不贵,一年近500元,作为公司发布信息当然可以。同时支持1000人,基本够用。网站建设代码基本模板,有相关
高考志愿填完后,再登录网站,能査看志愿表,是否意味填报成功?完成申请后,网页顶部将显示“成功申请”字样。如果再次登录网站,可以查看自己的心愿,这也意味着你已经成功填写了心愿,不用担心。最后,祝你好运怎么报名志愿者或义工?这取决于你是什么样的
学习网络营销专业需要哪些基础?会用手机就行,没那么复杂网络营销专业毕业,可以做什么工作?中国每年的毕业生都有好几百万,不管什么专业毕业的学生,能找到和自己所学专业对口的工作当然是最好的,但是现实是70%左右的学生找的工作与所学的专业是不对口
使用python操作Excel,哪个库比较方便易学?下面使用Python将99乘法表写入excel运行后,代码文件所在的文件夹将有一个额外的“99乘法表”excel,内容如下:打印结果如下:运行后,文件夹将有一个额外的“99乘法表修订版”e
富文本是什么?富文本格式(RTF)是由Microsoft开发的跨平台文档格式。大多数字处理软件可以读取和保存RTF文档。富文本格式是RTF的缩写。这是一个类似于文档格式(word文档)的文档,具有良好的兼容性。可以在Windows“附件”中
如何评估一个域名的价值?我们可以从类似域名的历史交易价格中学习。或咨询有经验的玩家!
如何确定域名是属于自己的?谢谢你的友谊!看看内容,我想你可能会担心你的域名会被别人偷走。建议向大型注册商注册,如阿里云。他有防止转出和盗窃的功能。
什么是企业邮箱管理员账号?企业邮箱管理员可以管理成员帐户。例如,删除和添加成员、设置分层权限、设置备份邮箱等功能