面试题之二HTTP和RPC的区别?

面试题之二

HTTP和RPC的区别?

Ask范围:分布式和微服务

难度指数:4星

考察频率:70-80%

开发年限:3年左右

从三个方面来回答该问题:

一.功能特性

1)HTTP是属于应用层的协议:超文本传输协议,是WWW万维网的基础,主要服务的网页端和服务端的数据传输上。

2)RPC是一个远程过程调用的协议,定位是实现不同计算机之间的数据通信,屏蔽通信底层的协议复杂性,让开发者像使用本地方法(服务)一样来完成远程服务调用。

二.实现原理

1)HTTP是一个已经实现成熟的应用层协议,定义了通信的报文格式。

方法:post get

URI: /form/entry

协议版本:http 1.1

请求头:Request Header

响应头:Response Header

请求体:Request body

响应体:Response body

2)RPC是一种协议的规范,没有具体的实现;只有按照RPC协议完成的通信框架,才是RPC框架,dubbo框架,底层就是RPC协议。RPC用于各个服务之间的调用,会更快,效率更高。

3)从应用层面

HTTP和RPC协议的框架,都能够实现跨网络节点的服务之间通信,二者共同点,底层都是tcp协议。RPC:标注协议,符合RPC协议,属于RPC框架。RPC的网络通信层面可以通过http协议来实现,比如OpenFeign底层,HTTP.

点评:

回答总结,从概念入手,笼统,容易讲; 实现原理,应用层面。

思考:

dubbo框架

OpenFeign服务调用

相关推荐
华清远见成都中心15 小时前
物联网通信协议对比:MQTT、CoAP、HTTP到底该怎么选
物联网·网络协议·http
kk的vmware虚拟机安装ubuntu15 小时前
鱼皮 yu-rpc:从 0 到 1 手写 RPC 框架的实践教程
网络·网络协议·其他·rpc
耍酷的魔镜16 小时前
谈谈如何使用Netty开发实现高性能的RPC服务器
服务器·网络协议·rpc
墨神谕17 小时前
JSON-RPC 2.0
网络协议·rpc·json
apihz20 小时前
随机驾考题目(C 照科一 / 科四 2000+ 题)免费API调用教程
android·java·c语言·开发语言·网络协议·tcp/ip
AI 小老六1 天前
Agent 工程化新底座:用 CLI 契约层打通 HTTP 接口与业务能力
网络·人工智能·http·ai·架构
猫头虎1 天前
城市级IP代理:赋能全球企业本地化数字增长与安全合规 | Decodo 德口多
网络·python·网络协议·tcp/ip·安全·pandas·pip
努力努力再努力wz1 天前
【高性能网络库与HTTP Server系列】:基于主从 Reactor 模型实现高性能 C++ 网络库与 HTTP Server
开发语言·网络·数据结构·数据库·c++·网络协议·http
c238561 天前
HTTP 超文本传输协议全解:Web 世界的通信规则
前端·网络协议·http