Thrift(二):RPC与Restful理解

RPC和RESTful都是服务调用的方式,RPC基于TCP,速度快,适合微服务内部通信;RESTful基于HTTP,跨语言、跨平台能力强,适合外部接口。SpringCloud倾向于使用RESTful因其轻量级特性,易于与其他系统交互。选择取决于具体需求和场景。
摘要由CSDN通过智能技术生成

目录

1、Restful 与 RPC框架

2、RPC、HTTP、RESTful

3、有了http,为什么需要rpc

4、rpc理解

5、spring cloud 服务调用方式为什么使用http restful 而不是RPC?


1、Restful 与 RPC框架

  • 1、从本质区别上看,RPC是基于TCP实现的,RESTFUL是基于HTTP来实现的。
  • 2、从传输速度上来看,因为HTTP封装的数据量更多所以数据传输量更大,所以RPC的传输速度是比RESTFUL更快的。
  • 3、因为HTTP协议是各个框架都普遍支持的。在toC情况下,因为不知道情况来源的框架、数据形势是什么样的,所以在网关可以使用Restful利用http来接受。而在微服务内部的各模块之间因为各协议方案是公司内部自己定的,所以知道各种数据方式,可以使用TCP传输以使各模块之间的数据传输更快。所以可以网关和外界的数据传输使用RESTFUL,微服务内部的各模块之间使用RPC。
  • 4、RESTFUL的API的设计上是面向资源的,对于同一资源的获取、传输、修改可以使用GET、POST、PUT来对同一个URL进行区别,而RPC通常把动词直接体现在URL上

1、RestTemplate:同步调用方式,使用HTTP协议应用层。

2、RPC:基于TCP,建立Socket连接。

3、RPC框架:Thrift,gRPC,Dubbo。

4、Thrift跨语言,Dubbo基于java

既然有 HTTP 请求,为什么还要用 RPC 调用? - 知乎

33.服务之间的调用之RPC、Restful深入理解_郑学炜的技术博客-CSDN博客_rpc和restful的区别

RESTful接口规范理解:Spring Cloud学习笔记(二)Restful理解及微服务的Restful调用_haogenmin的博客-CSDN博客

2、RPC、HTTP、RESTful

RPC、HTTP、RESTful - 威威超酷 - 博客园

3、有了http,为什么需要rpc

有了HTTP,为什么还要RPC? - 简书

4、rpc理解

谁能用通俗的语言解释一下什么是 RPC 框架? - 知乎

5、spring cloud 服务调用方式为什么使用http restful 而不是RPC?

HTTP Restful本身轻量,易用,适用性强,可以很容易的跨语言,跨平台,或者与已有系统交互,毕竟HTTP现在没有不支持的。
Spring可以整合其他的RPC方案,比如各种MQ,Hessian,Thrift,都可以。
但是各类RPC协议本身有各自的使用范围和编码要求,这些会对交互两端的代码形成约束,所以应该根据自身实际情况去选择。
至于各类整合方案,应该很多,可以带着具体的RPC协议去搜。

HTTP Restful本身轻量,易用,适用性强,可以很容易的跨语言,跨平台,或者与已有系统交互,毕竟HTTP现在没有不支持的。

Spring可以整合其他的RPC方案,比如各种MQ,Hessian,Thrift,都可以。

但是各类RPC协议本身有各自的使用范围和编码要求,这些会对交互两端的代码形成约束,所以应该根据自身实际情况去选择。

参考:RPC(二):RPC基础_mingyuli的博客-CSDN博客

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值