谁能用通俗的语言解释一下什么是RPC框架

如题所述

早期单机时代,一台电脑上运行多个进程,大家各干各的,老死不相往来。假如A进程需要一个画图的功能,B进程也需要一个画图的功能,程序员就必须为两个进程都写一个画图的功能。这不是整人么?于是就出现了IPC(Inter-process communication,单机中运行的进程之间的相互通信)。OK,现在A既然有了画图的功能,B就调用A进程上的画图功能好了,程序员终于可以偷下懒了。

到了网络时代,大家的电脑都连起来了。以前程序只能调用自己电脑上的进程,能不能调用其他机器上的进程呢?于是就程序员就把IPC扩展到网络上,这就是RPC(远程过程调用)了。现在不仅单机上的进程可以相互通信,多机器中的进程也可以相互通信了。

要知道实现RPC很麻烦呀,什么多线程、什么Socket、什么I/O,都是让咱们普通程序员很头疼的事情。于是就有牛人开发出RPC框架(比如,CORBA、RMI、Web Services、RESTful Web Services等等)。

OK,现在可以定义RPC框架的概念了。简单点讲,RPC框架就是可以让程序员来调用远程进程上的代码一套工具。有了RPC框架,咱程序员就轻松很多了,终于可以逃离多线程、Socket、I/O的苦海了。

至于最近Java中流行的Netty,没玩过。但是大致了解过,Netty、Mina是游戏行业做服务器开发的Java程序员用的比较多的PRC框架(我们学生主要是Java方向的,有不少人毕业后从事游戏开发)。据说互联网公司用的也比较多。这两行业都有高并发量的、长连接、分布式、异步通讯、大数据量等特点。Netty这种RPC框架封装和优化了Java NIO和异步网络编程的一些繁琐的细节,一方面可以让开发者专注于业务逻辑的实现,一方面只需要调用Netty封装的API就可以很快编写出高性能的服务器。
温馨提示:内容为网友见解,仅供参考
无其他回答

谁能用通俗的语言解释一下什么是RPC框架
OK,现在可以定义RPC框架的概念了。简单点讲,RPC框架就是可以让程序员来调用远程进程上的代码一套工具。有了RPC框架,咱程序员就轻松很多了,终于可以逃离多线程、Socket、I\/O的苦海了。至于最近Java中流行的Netty,没玩过。但是大致了解过,Netty、Mina是游戏行业做服务器开发的Java程序员用的比较多的...

什么是 RPC 框架?
RPC(Remote Procedure Call,即远程过程调用)是建立在Socket之上的,在一台机器上运行的主程序,可以调用另一台机器上准备好的子程序,就像LPC(本地过程调用)。也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数\/方法。由于不在一个内存空间,不能直接调用,需要通...

Java大佬详细讲解rpc框架实现原理
RPC,Remote Procedure Call,是一种远程进程间通信方式。它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而无需程序员显式编码远程调用的细节。这使得无论是调用本地接口\/服务还是远程接口\/服务,编写的调用代码基本相同。RPC会隐藏底层的通讯细节,避免直接处理Socket或Http...

rpc框架有哪些
RPC框架主要用于实现不同进程间的远程过程调用,它们通过网络协议来实现服务间的通信和协调。以下是几种常见的RPC框架的解释:Dubbo框架:Dubbo是一款高性能的Java RPC框架,主要用于微服务架构中的服务间通信。它支持多种服务调用方式,包括同步、异步以及单向通信等。Dubbo提供了服务注册与发现、负载均衡、容...

分布式系统架构设计之 RPC 及常见 RPC 框架介绍
在分布式系统架构设计中,RPC(Remote Procedure Call)扮演着关键角色,它是一种简化网络通信的协议,允许客户端无须关注底层细节调用远程服务。RPC的核心理念是,客户端像调用本地函数一样调用远程服务,确保高效和可靠性,尤其适合远程调用和分布式系统间的通信。业界流行的RPC框架众多,各有千秋。例如,...

RPC 技术及其框架 Sekiro 在爬虫逆向中的应用,加密数据一把梭!
RPC,全称 Remote Procedure Call,是一种技术思想而非一种规范或协议,它的诞生离不开分布式的发展,旨在解决构建分布式系统时的两个主要问题:一是如何让分布式系统更加易于构建,二是如何提高系统间的通信效率与安全性。RPC 技术通过使用二进制字节码传输而非 HTTP 协议,使得远程过程调用更加高效、安全。

rpc 框架有哪些
一、常见的RPC框架包括:1. Dubbo:Dubbo是一款高性能、轻量级的开源Java RPC框架。它支持多种服务调用方式,包括同步、异步、单向通信等。Dubbo提供了服务注册与发现、负载均衡、容错处理等功能,广泛应用于微服务架构中。2. gRPC:gRPC是由Google开发的高性能、开源、通用的RPC框架,支持多种语言。它基于...

如何给老婆解释什么是RPC
RPC,即远程过程调用(Remote Procedure Call),简单来说,就是程序调用另一个机器上的过程或函数,就像在本地执行一样。它主要用于分布式系统中,以实现服务间的交互。以计算器接口为例,当你在本地系统中调用Calculator类的add方法时,你只需创建Calculator对象并直接调用add方法。这就是本地过程调用。...

RPC是什么?
RPC,全称 Remote procedure Call,是分布式系统中常用的通信方式。它使程序能够调用另一个地址空间中的过程或函数,通常是共享网络中的另一台机器上的过程或函数,而无需程序员显式编码此远程调用的细节。除了 RPC 之外,系统间数据交换的常见方法还包括分布式消息队列、HTTP 请求调用、数据库和分布式缓存...

RPC框架,客户端和服务端如何建立网络连接?
在微服务中,选择高效、易于使用的序列化方式至关重要,如JSON、XML、Protocol Buffers等。考虑因素包括数据传输效率、数据结构稳定性、跨语言和平台需求以及数据安全性。JSON和XML易于理解,但传输效率较低;Protocol Buffers高效且支持压缩,适用于网络传输。五、总结 完整的RPC调用框架由通信框架、通信协议、...

相似回答