电子发烧友 电子发烧友
  • 首页
  • 技术
    可编程逻辑
    MEMS/传感技术
    嵌入式技术
    模拟技术
    控制/MCU
    处理器/DSP
    存储技术
    EMC/EMI设计
    电源/新能源
    测量仪表
    制造/封装
    RF/无线
    接口/总线/驱动
    EDA/IC设计
    光电显示
    连接器
    PCB设计
    LEDs
    汽车电子
    医疗电子
    人工智能
    可穿戴设备
    军用/航空电子
    工业控制
    触控感测
    智能电网
    音视频及家电
    通信网络
    机器人
    vr|ar|虚拟现实
    安全设备/系统
    移动通信
    便携设备
    物联网
    区块链
    HarmonyOS
    RISC-V MCU
    光伏
    ChatGPT
    IGBT
    充电桩
    氮化镓
    BLDC
    逆变器
    5G
    电机控制
  • 资源
    技术文库
    新品速递
    电路图
    元器件知识
    电子百科
    最新技术文章
  • 下载
    在线工具
    常用软件
    电子书
    datasheet
  • 专栏
    电子说
    专栏
  • 社区
    论坛
    问答
    小组
    技术专栏
    社区之星
    试用中心
    HarmonyOS技术社区
    2023电子工程师大会
  • 研究院
  • 活动
    设计大赛
    硬创大赛
    社区活动
    线下会议
    在线研讨会
    小测验
  • 学院
    直播
    课程
  • 视频
  • 企业号
  • 华秋智造
  • 工具
    PCB在线检查
    datasheet查询
    选型替代查询
    免费样品申请
    免费评测试用
    工程师专区
    技术子站
0
  • 聊天消息
  • 系统消息
  • 评论与回复
查看更多
查看更多
查看更多
  • 0

    关注
  • 0

    粉丝
  • 0

    动态
VIP于 到期 续费
  • 个人中心
  • 内容管理
  • 积分兑换
    当前积分:
  • 修改资料
  • 退出登录
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
下载中心
  • 推荐
  • 分类
  • 资料
  • 软件
  • 工具
  • 排行榜
  • DataSheet

完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>

3天内不再提示

Restful 和 RPC 是什么关系与区别

lhl545545 来源:电子发烧友网 2018-02-07 15:35 次阅读

Restful 和 RPC 是什么关系

这两个不是互斥的,HTTP是不是RPC完全取决于client的具体形式。传统的RPC一般是基于二进制协议的,client发个二进制包过来(然后阻塞),server处理完回复一个包,client收到后醒来。在二进制协议中一般可以在包中加个id来指明回复和请求的对应关系,这样我们就能在一个tcp连接上同时发起多个请求和回复。HTTP这种文本协议也可以加id,但由于一些原因(Con tent-Length可能缺失),即使加了id也做不到一个连接上同时传多个HTTP消息,所以HTTP协议一般会和server保持多个连接,每个连接上同时最多只有一个HTTP消息。此种”连接池“方式即为HTTP中的”Keep-alive“。所以即使在HTTP上(或任何协议上),我们仍然可以做到高效地发送一个请求过去,阻塞,等待server处理完后,再醒来。这不就是RPC么。所以这儿的选择更多是平衡功能和性能。一般来说,面向终端用户的尽量用Restful HTTP。原因是认知广,直观, 编程语言都支持HTTP(包括shell,这样调试起来方便),性能不是那么重要,方便用户share链接。而面向内部系统的话如果机器不多也可以考虑用Restful HTTP,如果机器很多还是尽量用二进制的RPC吧,毕竟性能差距还是很大的。

 Restful 和 RPC 是什么关系与区别

restful架构与rpc区别

RPC

RPC 即远程过程调用, 很简单的概念, 像调用本地服务(方法)一样调用服务器的服务(方法)。

通常的实现有 XML-RPC , JSON-RPC , 通信方式基本相同, 所不同的只是传输数据的格式。

(如果你已经习惯于XML繁重的尖括号,你不妨可以尝试下更加轻型,高效,传输效率高的 JSON.)

一个简单的通信过程通常为:

Request

<?xml version=“1.0”?>

member.get_username_by_id

Response

<?xml version=“1.0”?>

Zhu Tao

向服务器发送一个过程调用的方法及其 参数, 得到服务器返回的方法执行的结果。

REST

REST 不是一种协议,它是一种架构, 一种 Web Serv ice 能够如果满足 REST 的几个条件, 通常就称这个系统是 Restful 的。

这里提到的条件包括:

C/S结构 (这是Internet服务的一个基本特征)

无状态 (很熟悉吧,呵呵)

可以cache (想起了浏览器?)

分层系统 (想起了无数的架构?)

统一的 接口 (如果这是可能的, 程序员有福了, :D)

code on demand(可选, 其实是一种扩展性的要求)

看了这几个特征后,你想起了什么?

你可能会破口而出: HTTP.

我答: You got it!

HTTP是WWW的最核心的协议, 它将简单的分布于世界各个角落的资源都统一起来, 统一的地址, 简单的方法, 和一定数量的表达方式。(你可能对这三点描述很模糊,请go ahe ad)。

REST 的三个要素是 唯一的资源标识, 简单的方法 (此处的方法是个抽象的概念), 一定的表达方式。

REST 是以 资源 为 中心, 名词即资源的地址, 动词即施加于名词上的一些有限操作, 表达是对各种资源形态的抽象。

以HTTP为例, 名词即为URI(统一资源标识), 动词包括POST, GET, PUT, DELETE等(还有其它不常用的2个,所以 整个动词集合是有限的), 资源的形态(如text, html, image, pdf等)

Restful 和 RPC 是什么关系与区别

RPC与REST的区别

如果你想只记住一点,那么就请记住 RPC是以动词为中心的, REST是以名词为中心的, 此处的 动词指的是一些方法, 名词是指资源。

你会发现,以动词为中心,意味着,当你要需要加入新功能时,你必须要添加更多的动词, 这时候服务器端需要实现 相应的动词(方法), 客户端需要知道这个新的动词并进行调用。

而以名词为中心, 假使我请求的是 hostname/friends/, 无论这个URI对应的服务怎么变化,客户端是无需 关注和更新的,而这种变化对客户端也是透明的。

至于其它的区别,如对实现语言的依赖, 耦合性等,这些都是上面提到的这个根本区别所衍生的。

让我们回到引入部分的2个问题。 当你每天使用HTTP冲浪时,你都在使用 REST 与远程的服务器进行亲密接触。 当你使用Gtalk和同事朋友沟通时,你则是在享受着 RPC 的便利.

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • RPC
    RPC
    +关注

    关注

    0

    文章

    110

    浏览量

    11483
  • Restful
    Restful
    +关注

    关注

    0

    文章

    11

    浏览量

    3524
收藏 人收藏

    评论

    相关推荐

    Dubbo源码浅析(一)—RPC框架与Dubbo

    时,就像调用本地过程一样方便。 1.2 RPC与Http的关系 用一句话来总结就是: RPC是一种概念,http是一种协议,可以认
    的头像 发表于 08-16 15:18 475次阅读
    Dubbo源码浅析(一)—<b class='flag-5'>RPC</b>框架与Dubbo

    图像处理器与计算机视觉有什么关系区别

    图像处理器与计算机视觉是两个在图像处理领域紧密相连但又有所区别的概念。它们之间的关系区别可以从多个维度进行探讨。
    的头像 发表于 08-14 09:36 296次阅读

    费米气体和超导是什么关系呢?费米子的代码让电阻消失了?

    金属里面自由电子构成的特殊气体,叫做“费米气体”。那么,费米气体和超导是什么关系呢?
    的头像 发表于 04-26 10:41 471次阅读
    费米气体和超导是<b class='flag-5'>什么关系</b>呢?费米子的代码让电阻消失了?

    什么是元宇宙,AR/VR和它又是什么关系呢?

    最近苹果公司的Vision pro上市预售掀起了一波潮流,元宇宙的概念又火了。那么什么是元宇宙,AR/VR和它又是什么关系呢?
    的头像 发表于 04-22 15:14 1486次阅读

    5G射频芯片和基带芯片是什么关系

    在手机终端中,最重要的核心就是射频芯片和基带芯片。射频芯片负责射频收发、频率合成、功率放大;基带芯片负责信号处理和协议处理。那么射频芯片和基带芯片是什么关系? 射频芯片和基带芯片的区别主要
    的头像 发表于 01-06 16:16 3317次阅读
    5G射频芯片和基带芯片是<b class='flag-5'>什么关系</b>?

    电机槽满率和铜满率的区别什么关系

    电机槽满率和铜满率区别,有什么关系? 电机槽满率和铜满率是电机设计和制造中两个相关但又具有不同含义的重要参数。在电机设计和制造过程中,这两个参数的选择和优化对电机性能和效率起着至关重要的作用。本文将
    的头像 发表于 12-25 11:47 959次阅读

    PCB和集成电路是什么关系?有什么区别

    PCB和集成电路是什么关系?有什么区别? PCB(印刷电路板)和集成电路是现代电子领域中非常重要的两个概念。它们在电子设备的设计、制造和使用中扮演着至关重要的角色。 首先,我们来了解一下PCB的概念
    的头像 发表于 12-21 13:49 1055次阅读

    减速电机的扭矩与速度有什么关系

    减速电机的扭矩与速度有什么关系? 减速电机是一种常见的电动机,常用于需要精确控制转速和输出扭矩的应用中。在了解减速电机的扭矩与速度关系之前,我们先来了解一下减速电机的基本原理。 减速电机由两部分
    的头像 发表于 12-19 09:55 1350次阅读

    电机的输入功率是什么?与额定功率是什么关系呢?

    请一下,电机的输入功率是什么啊, 与额定功率是什么关系呢?
    发表于 12-12 07:52

    步进电机的转速和转矩是什么关系?转速高低对转矩的影响?

    步进电机的转速和转矩是什么关系?转速高低对转矩的影响?
    发表于 12-12 07:00

    窗函数对FFT有什么影响?他们是什么关系

    窗函数对FFT有什么影响?他们是什么关系?在visualStudio软建中,要对音频信号进行FFT变换时,需要加窗函数进行控制,这是为什么?窗函数对FFT有什么影响?窗函数是起到截取数据大小作用还是起到插零的作用?
    发表于 11-30 06:24

    高速电机轴承损坏和控制策略有什么关系吗?

    1,高速电机轴承损坏和控制策略有什么关系吗? 2,电机轴承有比较突然的温升是正常的吗? 3,铭牌所标的额定最高转速应该是其它条件都满足的条件下是可以长时间运行的吗?
    发表于 11-22 07:06

    MOS管和场效应管有什么关系

    MOS管和场效应管有什么关系?对于初学者来说,这两个名字常常让人混淆,MOS管到底是不是场效应管?
    的头像 发表于 11-13 17:23 1532次阅读
    MOS管和场效应管有<b class='flag-5'>什么关系</b>?

    RPC 和 REST 区别是什么

    区别呢? 有使用经验的人,就会知道: 前者(RESTful)主要用于各组件之间的通信(如nova与glance的通信),或者说用于组件对外提供调用接口 而后者(RPC)则用于同一组件中各个不同模块
    的头像 发表于 11-02 10:40 2887次阅读
    <b class='flag-5'>RPC</b> 和 REST <b class='flag-5'>区别</b>是什么

    射频和基带区别是什么?射频芯片和基带芯片是什么关系

    射频和基带区别是什么?射频芯片和基带芯片是什么关系? 射频和基带是无线通信系统中两个最基本的概念。射频表示高频信号,也就是载有信息的无线电信号。基带则是低频信号,包含了几乎整个无线电通信信号的信息
    的头像 发表于 10-25 15:02 3195次阅读
    • 文章
    • 资料
    • 帖子
    • 性能提升45%!高通推出骁龙8 Elite,首款采用Oryon 核心的移动SoC

      章鹰观察
      10小时前
      375 阅读
    • 晶振PF是什么意思呢?

      扬兴科技
      12小时前
      274 阅读
    • MySQL性能优化浅析及线上案例

      京东云
      13小时前
      214 阅读
    • 高通推出骁龙8至尊版,集成全球最快的移动端CPU

      章鹰观察
      14小时前
      454 阅读
    • LSM6DSV16X基于MLC智能笔动作识别(2)----MLC数据采集

      嵌入式单片机MCU开发
      18小时前
      266 阅读
    • 海尔21TA1-J彩电图纸

      刘洋
      100
      10积分
      112下载
    • MIPS中文学习手册

      w22112601
      1.13 MB
      免费
      0下载
    • 几个最简单实用的电容降压原理图

      KK
      0.29 MB
      免费
      52下载
    • Gearsystem跨平台的世嘉模拟器

      贾桂林
      15.93 MB
      2积分
      2下载
    • BBGestureBack全屏手势返回插件

      王萍
      9.18 MB
      2积分
      1下载
    • 200圆!求助大佬给一份VSG并网和离网模式的simulink仿真

      183283354336
      1天前
      340 阅读
    • 99.9%的ACDC开关电源都会因为这个隐蔽BUG导致自身或者后级电路过早失效

      jf_25381327
      1天前
      273 阅读
    • 鸿蒙Flutter实战:02-Windows环境搭建踩坑指南

      jf_58601940
      1天前
      228 阅读
    • 【RA-Eco-RA2E1-48PIN-V1.0开发板试用】2、SPI驱动LCD(ST7735)屏

      jf_01200635
      1天前
      338 阅读
    • 开源项目!DIY了一台无人机,用全志T113芯片

      远风
      1天前
      347 阅读

    推荐专栏

    更多

      玻璃钢生产厂家饶平玻璃钢花盆花器惠州发光景观玻璃钢雕塑铜陵高端商场美陈玻璃钢雕塑手绘素材玻璃钢人像雕塑报价单淮南高速玻璃钢花盆学校孔子玻璃钢雕塑图卢湾区玻璃钢花盆制作绍兴大型主题商场美陈广州玻璃钢装饰雕塑制作厂特色玻璃钢雕塑江苏玻璃钢海豚雕塑价格泉州石狮专业玻璃钢雕塑厂家有前景的玻璃钢雕塑清镇玻璃钢雕塑厂家张店玻璃钢雕塑苏州玻璃钢广场雕塑溧水商场美陈道具萍乡玻璃钢雕塑销售厂家郑州大型玻璃钢人物雕塑定制南宁环保玻璃钢雕塑哪家便宜大象玻璃钢雕塑加工厂上海小区玻璃钢雕塑定制淮安玻璃钢造型雕塑商场门口美陈图片吉林园林玻璃钢雕塑茂名玻璃钢卡通老鼠雕塑西安商场夏季美陈菏泽公园不锈钢玻璃钢卡通雕塑商场高空美陈吊饰工厂香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

      玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化