HTTP&RPC
HTTP
是什么#
是一个超文本传输协议。
基于 TCP/IP 来传输文本、图片、视频、音频等。
本质:客户端和服务端约定好的一种通信格式
做什么#
我们上网要么就是获取一些信息来看,要么就是修改一些信息。
用浏览器看博客就是获取信息,发博客就是修改信息。
浏览器需要告知服务器它需要什么,这次的请求是要获取哪些信息?比如,我要获取HTTP相关的博客
这就涉及到浏览器和服务器之间的通信交互。
交互就需要一种格式。
两者之间规定使用英文交流,一方使用其他语种则无法交流。
HTTP规定了一种通信格式,跨浏览器跨语言,减少了交互的成本;
当今网络世界web交互都是HTTP
HTTP规定:
请求:
- 请求头
- 请求报文
- 请求体
响应:
- 状态行
- 响应报文
- 响应体
RPC
是什么#
远程过程调用
可以是HTTP协议,也可以是自定义格式
微服务时代,各业务模块调用都是服务间远程调用
为什么需要RPC#
HTTP 协议比较的冗余,RPC 都是内部调用所以不需要太考虑通用性,只要公司内部保持格式统一即可。
可以做各种定制化的协议来使得通信更高效。
公司内部服务的调用一般都用 RPC,而 HTTP 的优势在于通用,大家都认可这个协议。
三方平台提供的接口都是通过 HTTP 协议调用的,第三方更在乎通用性。
一般调用第三方都是 HTTP ,公司内部用 RPC。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2021-02-08 博主推荐