RPC概念是什么

这篇文章主要讲解了“RPC概念是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“RPC概念是什么”吧!

站在用户的角度思考问题,与客户深入沟通,找到安康网站设计与安康网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站制作、成都网站设计、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟空间、企业邮箱。业务覆盖安康地区。

一、RPC概念

Dubbo服务是一个RPC框架,那我们首先就要先理解什么叫做RPC, Remote Procedure Call 即远程过程调用。

远程过程调用相对的是本地过程调用,本地过程调用就不用说了,简单理解成本地方法调用函数即可,而远程调用是指调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数。而不用程序员显式编码这个远程调用的细节。即程序员无论是调用本地的还是远程的函数,本质上编写的调用代码基本相同。

RPC的基本架构图如下:

RPC概念是什么

 RPC框架就是图中的client stub 和说server stub,服务间要相互调用,需要先建立连接。当客户端调用client stub,可能需要传递参数,而在网络间传递,需要进行序列化,序列化完全后将需要调用的消息发送给server stub,服务端收到信息后,先反序列化,然后再调用本地服务,调用完本地服务后,返回处理结果,结果也需要进行序列化,序列化完成之后再返回消息,而client stub 收到消息,也需要再次反序列化,再转换成调用结果,这就是一个完整的RPC过程,如图所示:

RPC概念是什么

RPC 框架就是要实现像那小助手一样的东西,目的就是让我们使用远程调用像本地调用一样简单方便,并且解决一些远程调用会发生的一些问题,对于我们来说是无感知的。

在示例图中我们也可以看出,RPC的核心模块就是通讯,序列化

那如果让我们来设计一个RPC框架,我们的设计思路应该是怎么样的呢?

首先从服务调用者开始,这是一个消费方,我们要消费一个服务,那么这种服务应该是一个接口形式的,这个接口一般是一个公用jar包来定义,当我知道需要调用什么接口时,具体的实现不需要清楚,这些都应该是框架代理来做的,我只需要带接口和参数即可。

消费方不需要知道其中细节,不需要知道要调用那台服务器上的服务,这个时候应该有一个注册中心,这个注册中心有点类似公司大楼的前台物业,他负责指引来客人找到找入驻本栋大楼的公司,每个公司类似服务提供者,公司入驻大大楼后,将自己的楼层和门牌号告诉前台,前台把公司的情况贴在前台指引,那么当有人要找到公司提供服务时,可以直接通过门牌找到想要去的公司,而这个公司搬走后,前台物业又将此公司去掉,消费者需要的服务器是可以直接找到对应公司。

当然,如果你直接告诉了客户你的具体位置,那么客户可以不需要去注册中心找你,也就是注册中心可以不需要

那作为服务提供者,你要告诉别人你公司能提供的服务器,去实现对应的接口,然后暴露出去,也就是去向注册中心注册自己,暴露自己所能提供的服务。 然后有消费者请求过来需要处理,提供者需要用和消费者协商好的协议来处理这个请求,然后做反序列化

面对众多的服务,精细化的监控和方便的运维必不可少。 这个时候我们需要监控运维,也就是监控中心,当然如果你要这么莽,就是不需要监控,当然也是可以的。

到此,我们能想到的架构就是如此,接下里我们就来看看dubbo设计(当然,我是通过实际架构反推出来,手动狗头)

二、Dubbo 核心概念

Dubbo 是阿里巴巴 2011年开源的一个基于 Java 的 RPC 框架,中间沉寂了一段时间,不过其他一些企业还在用 Dubbo 并自己做了扩展,比如当当网的 Dubbox,还有网易考拉的 Dubbok。

在 2018 年和 Dubbox 进行了合并,并且进入 Apache 孵化器,在 2019 年正式成为 Apache 顶级项目。

学习一门技术,如果有官网的话我们尽量从官网上学习:首先我们要知道Dubbo有哪些特性:

  • 面向接口代理的高性能RPC调用: 提供高性能的基于代理的远程调用能力,服务以接口为粒度,为开发者屏蔽远程调用底层细节。

  • 智能负载均衡: 内置多种负载均衡策略,智能感知下游节点健康状况,显著减少调用延迟,提高系统吞吐量。

  • 服务自动注册与发现: 支持多种注册中心服务,服务实例上下线实时感知。

  • 高度可扩展能力: 遵循微内核+插件的设计原则,所有核心能力如Protocol、Transport、Ser.........

感谢各位的阅读,以上就是“RPC概念是什么”的内容了,经过本文的学习后,相信大家对RPC概念是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!

网站栏目:RPC概念是什么
转载注明:https://www.cdcxhl.com/article10/gcocgo.html

成都网站建设公司_创新互联,为您提供搜索引擎优化服务器托管品牌网站建设品牌网站设计面包屑导航响应式网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都做网站