下载APP
登录
关闭
讲堂
算法训练营
Python 进阶训练营
企业服务
极客商城
客户端下载
兑换中心
渠道合作
推荐作者
当前播放: 14 | 微服务通讯方式 RPC vs REST
00:00 / 00:00
标清
  • 标清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看

微服务架构核心20讲

共20讲 · 20课时·约160分钟
13958
免费
01 | 什么是微服务架构?
免费
02 | 架构师如何权衡微服务的利...
免费
03 | 康威法则和微服务给架构师...
04 | 企业应该在什么时候开始考...
05 | 什么样的组织架构更适合微...
06 | 如何理解阿里巴巴提出的微...
07 | 如何给出一个清晰简洁的服...
08 | 微服务总体技术架构体系是...
09 | 微服务最经典的三种服务发...
10 | 微服务 API 服务网关(...
11 | 微服务 API 服务网关(...
12 | 跟 Netflix 学习微服务...
13 | 集中式配置中心的作用和原...
14 | 微服务通讯方式 RPC vs...
15 | 微服务框架需要考虑哪些治...
16 | 微服务监控系统分层和监控...
17 | 微服务的调用链监控该如何...
18 | 微服务的容错限流是如何工...
19 | Docker 容器部署技术 &...
20 | 容器集群调度和基于容器的...
本节摘要

精选留言(11)

  • LMD 置顶
    2018-01-26
    关于《微服务架构核心20讲》课程讲义(PDF 文件),学员可复制下面链接到浏览器下载获取。 http://t.cn/RQs9iTw
    5
  • 2018-02-25
    对外开放这块rpc除了消息二进制不友好以外,应该主要是外部平台无法直接访问到具体Server吧,因为rpc一般是直连而企业有防火墙无法直接穿透直连,所以只能包一层rest服务。

    作者回复: 你讲得也是一个原因

    10
  • 经常身边有人说webservice协议,http协议,json协议,soup协议,rpc协议,restfull,总觉得晕晕的区分不开,老师怎么看待这些?如何分类

    作者回复: http是一种基于tcp的web通讯协议,json是一种消息格式(不是通讯协议),soap是一种web service的消息格式(soap ws通常基于http),rpc是远程过程调用,restful是web service的一种风格(基于http/json)。本质上这些东西都是帮我们实现远程调用分布在另外一台机器上的应用的某个功能,需要通信协议(http or tcp)+ 消息格式(json or soap),本质上都可以称为远程过程调用rpc,restful也是一种特殊的rpc。确有点搞,要靠经验积累要一定程度自然分清楚。

    9
  • 老师,对于选型rpc还是resrful的场景,能举个例子说明吗?

    作者回复: 大部场景restful就可以,restful是目前业界趋势。如果业务场景对性能要求很高,且企业业务规模发展到一定阶段,可考虑rpc。

    3
  • 2019-07-01
    杨波老师,咨询您一个问题,分布式事务如果采用本地消息表加上消息队列的方式实现最终一致性,那是不是就不需要rpc了,就用消息队列发送rpc的接口类.方法名.输入输出参数。

    还有本地消息表存放的具体内容是什么呢?

    我对这个最终一致性方案的实现,看不到具体的设计和实现,有点懵逼,无法理解
    展开

    作者回复: 你讲的分布式事务基于消息的实现方式,这两篇文章可以参考(medium需要翻墙):
    https://dzone.com/articles/data-consistency-in-microservices-architecture

    https://medium.com/technology-learning/event-sourcing-and-cqrs-a-look-at-kafka-e0c1b90d17d8

    1
  • 2018-05-07
    请问杨老师,在什么情况下REST通讯方式的性能要高于RPC呢?按理说REST方式比RPC多封装了一层,应该在开销上RPC更低一些吧

    作者回复: 绝对性能一般REST低于RPC,但具体选择要看通讯层性能是不是你系统的瓶颈,不是瓶颈选两个任意都OK,简单选REST,性能有瓶颈则考虑RPC和二进制编码优化

    1
  • 2019-10-09
    gRPC的通讯协议是HTTP2.0
  • 2019-06-09
    不是也有json rpc么

    作者回复: 对,json rpc也是一种特殊的RPC,采用json作为消息,一般binary rpc更常见。

  • 2018-11-24
    我们最近在看AMQP作为通信方式,您怎么看呢?

    作者回复: 有用mq做服务通信做法,有公司这么干,好处是解耦,不好是异步调试不便,还有单点瓶颈

  • 2018-07-19
    我们公司现在就在使用TARS这套解决方案,优缺点感觉文中都已经说到了。和其他rpc框架略有不同的是,TARS还包括了一套运维平台体系,带来的好处是一站式解决方案,不好的地方是需要运维团队对TARS本身有一定的运维能力。除此之外,swagger一般需要先写代码,再生成文档,但是IDL却可以预先消除服务提供者和调用者依赖,这点在开发效率上应该也是rpc的优势。

    作者回复: 嗯,TAS是微服务+运维开箱即用大套餐平台。swagger支持契约驱动编程模型

  • 2018-05-07
    springcloud中的feign是属于rpc还是rest?

    作者回复: SC低层一般是REST,但feign具有一些RPC强类型客户端特性,不必纠结