进阶SpringBoot之分布式系统与 RPC 原理

分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统

分布式系统是由一组通过网络进行通信,为了完成共同的任务而协调工作的计算机节点组成的系统

其目的是利用更多的机器,处理更多的数据

RPC(Remote Procedure Call)是指远程过程调用,是一种进程间通信方式,他是一种技术的思想,而不是规范

比如有两台服务器 A、B

一个应用部署在 A 服务器上,想要调用 B 服务器上应用提供的函数或方法

由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据

RPC 的作用就是像调用本地函数一样去调远程函数

1.首先,客户端调用

2.网络传输对象需要序列化,发送信息到服务端

3.服务端开始反序列化,调用本地服务

4.服务处理完后,将结果返回出去

5.最后返回到本地的一个调用结果

RPC 两个核心模块:通讯、序列化

通讯:传输

序列化:数据传输需要转换

相关推荐
茉莉玫瑰花茶2 分钟前
GO [ 并发 · 调度器 ]
开发语言·后端·golang
zhangzeyuaaa3 分钟前
深入理解 Ruby 可变对象与不可变对象的原理、坑点与最佳实践
开发语言·后端·ruby
wdfk_prog6 分钟前
Wi-Fi Direct 教程 05:control socket 与 eloop——P2P_FIND 怎样进入 wpa_supplicant 命令解析器
运维·服务器·后端·网络协议·ubuntu·p2p·wifi-direct
资深技术分享员31 分钟前
遗留系统——把“改不动的老系统“接过来
java·服务器·数据库
IT_陈寒33 分钟前
Python的GIL锁让我把多线程代码全重写了!
前端·人工智能·后端
江湖有缘39 分钟前
Docker实战 | 使用Docker部署Bibliotheca阅读习惯管理工具
java·docker·容器
艾莉丝努力练剑41 分钟前
【AI大模型接入SDK】ChatSDK:CMake构建静态库完整实现
java·开发语言·网络·c++·人工智能·学习·sdk
百度一下吧42 分钟前
umi后台管理项目实战:从工程搭建到生产构建
java·前端·javascript
Joe_Wang51 小时前
【从0到1学习JVM · 14】堆内存各区域分工与Xms和Xmx设为一样的真相
java·jvm·学习·垃圾回收
.道阻且长.1 小时前
C++11 :右值引用的作用,引用折叠和完美转发
java·开发语言·c++