2021Java高级面试题及答案,太牛了!

2021Java高级面试题及答案,太牛了!什么是RPC?RPC原理是什么?什么是RPC?RPC(RemoteProcedureCall)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。比如两个不同的服务A、B部署在两台不同的机器上,那么服务A如果想要调用服务B中的某个方法该怎么办呢?使用HTTP请求当然可以,但是可能会比较慢而且一些优化做的并不好。RPC的出现就是为了解决这个问题。RPC原理是什么?服务消费方(client)调用以本地调用方式调用服务;client

大家好,又见面了,我是你们的朋友全栈君。

什么是 RPC?RPC原理是什么?

什么是 RPC?

RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。比如两个不同的服务 A、B 部署在两台不同的机器上,那么服务 A 如果想要调用服务 B 中的某个方法该怎么办呢?使用 HTTP请求 当然可以,但是可能会比较慢而且一些优化做的并不好。 RPC 的出现就是为了解决这个问题。

RPC原理是什么?

2021Java高级面试题及答案,太牛了!

  1. 服务消费方(client)调用以本地调用方式调用服务;
  2. client stub接收到调用后负责将方法、参数等组装成能够进行网络传输的消息体;
  3. client stub找到服务地址,并将消息发送到服务端;
  4. server stub收到消息后进行解码;
  5. server stub根据解码结果调用本地的服务;
  6. 本地服务执行并将结果返回给server stub;
  7. server stub将返回结果打包成消息并发送至消费方;
  8. client stub接收到消息,并进行解码;
  9. 服务消费方得到最终结果。

下面再贴一个网上的时序图:

2021Java高级面试题及答案,太牛了!

RPC 解决了什么问题?

从上面对 RPC 介绍的内容中,概括来讲RPC 主要解决了:让分布式或者微服务系统中不同服务之间的调用像本地调用一样简单。

常见的 RPC 框架总结?

  • RMI(JDK自带): JDK自带的RPC,有很多局限性,不推荐使用。

  • Dubbo: Dubbo是 阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。目前 Dubbo 已经成为 Spring Cloud Alibaba 中的官方组件。

  • gRPC :gRPC是可以在任何环境中运行的现代开源高性能RPC框架。它可以通过可插拔的支持来有效地连接数据中心内和跨数据中心的服务,以实现负载平衡,跟踪,运行状况检查和身份验证。它也适用于分布式计算的最后一英里,以将设备,移动应用程序和浏览器连接到后端服务。

  • Hessian: Hessian是一个轻量级的remotingonhttp工具,使用简单的方法提供了RMI的功能。 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。

  • Thrift: Apache Thrift是Facebook开源的跨语言的RPC通信框架,目前已经捐献给Apache基金会管理,由于其跨语言特性和出色的性能,在很多互联网公司得到应用,有能力的公司甚至会基于thrift研发一套分布式服务框架,增加诸如服务注册、服务发现等功能。

面试结束复盘查漏补缺

每次面试都是检验自己知识与技术实力的一次机会,面试结束后建议大家及时总结复盘,查漏补缺,然后有针对性地进行学习,既能提高下一场面试的成功概率,还能增加自己的技术知识栈储备,可谓是一举两得。

以下最新总结的阿里P6资深Java必考题范围和答案,包含最全MySQL、Redis、Java并发编程等等面试题和答案,用于参考~

资料免费领取方式:点赞关注后,戳这里免费领取

重要的事说三遍,关注+关注+关注!

历经30天,说说我的支付宝4面+美团4面+拼多多四面,侥幸全获Offer

image.png

更多笔记分享

[外链图片转存中…(img-7ZpNVOBH-1627556213130)]

更多笔记分享

历经30天,说说我的支付宝4面+美团4面+拼多多四面,侥幸全获Offer

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161235.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 微信公众号基础功能搭建怎么弄_怎么做一个订阅号

    微信公众号基础功能搭建怎么弄_怎么做一个订阅号自动回复在微信公众号后台首页左侧导航栏中找到功能。然后点击自动回复。自动回复包含被关注回复、收到消息回复和关键词回复三项内容自定义菜单

    2025年7月6日
    1
  • Android笔记之 文件保存、压缩与清空删除

    Android笔记之 文件保存、压缩与清空删除

    2022年2月1日
    57
  • 渗透宜家俱乐部会员系统「建议收藏」

    渗透宜家俱乐部会员系统「建议收藏」渗透宜家俱乐部会员系统/**************************************/*作者:半斤八兩/*博客:http://cnblogs.com/bjblcracked/*日期:2

    2022年8月3日
    3
  • box–shadow_shadowboxing

    box–shadow_shadowboxing今天课堂上有学生问到box-shadow这个属性,那么下面我们就来详细的解说下这个属性它的用法,box-shadow是css3中的一个属性,它可以向框添加一个或多个阴影。首先我们来看它的语法:bo

    2022年8月4日
    9
  • Pycharm汉化后设置无法打开解决办法

    Pycharm汉化后设置无法打开解决办法**Pycharm汉化后设置无法打开解决办法**本人初学python,在安装Pycharm之后,汉化Pycharm时遇到了汉化后设置无法打开的问题。经过百度问题之后,找到了解决方法,并成功解决。在这里给大家整合一下,也留之给未来的自己。如下:首先下载汉化包(我找到的可以汉化成功并且打开设置的汉化包)(1)百度云下载链接链接:https://pan.baidu.com/s/1tpv0…

    2022年5月24日
    35
  • QQ图片文件夹说明及清理

    QQ图片文件夹说明及清理C2C(个人与好友之间的图片传输,清空与否依照个人意愿)Group(群组之间的图片传输,很乱建议全部清空)MarktingMsgCachePic(Markting+Msg+Cache+Pic意思是消息图片缓冲集合,就是你聊天时候发送的一些图片保存的地方,无用,可删除)MsgWander(漫游信息,浏览信息,可删)SharePic(分享图片,可删)*注意不要删掉文件夹(比如SharePic)要打开选

    2022年8月10日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号