面试题之二HTTP和RPC的区别?
2023-12-26 21:37:00
面试题之二
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服务调用
文章来源:https://blog.csdn.net/zhangchen124/article/details/135231394
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!