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

news/2024/9/28 23:32:28/

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

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

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

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

比如有两台服务器 A、B

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

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

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

1.首先,客户端调用

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

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

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

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

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

通讯:传输

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


http://www.ppmy.cn/news/1531658.html

相关文章

Chainlit集成LlamaIndex实现知识库高级检索(路由检索器)

检索原理 llamaindex 是一个用于构建和部署基于文档的问答系统的框架。其中,RouterRetriever 是一个特定的检索器组件,它设计用于根据输入查询选择最佳的检索策略。RouterRetriever 的主要功能是在多个不同的检索器之间进行路由,根据输入的特…

vue+UEditor附件上传问题

🏆本文收录于《全栈Bug调优(实战版)》专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&am…

scrapy快速上手

安装 除了scrapy本身还要安装两个库 pip install scrapy pip install pywin32 pip install wheel 创建项目 在要创建项目的地方打开powershell scrapy startproject 项目名 我们得到这样的项目结构,功能如下 scrapy.cfg 项目的主配置信息 …

nvm以及npm源配置

配置 NVM 和 NPM 使用镜像源 接上一篇。国内使用会遇到网络连接问题。为了解决这个问题,我们可以配置 NVM 和 NPM 使用腾讯的源。 配置 NVM 源 首先,我们需要配置 NVM 源。可以使用以下命令: export NVM_NODEJS_ORG_MIRRORhttps://mirrors.…

基于STM32的智能家居交互终端:使用FreeRTOS与MQTT协议的流程设计

一、项目概述 简要介绍项目的目标和用途 随着智能家居的普及,家庭智能交互终端成为提升居住体验的重要设备。本文将介绍一个基于STM32的家庭智能交互终端的设计与实现,该终端能够通过触摸屏、语音识别和传感器数据采集等功能,提供家庭环境监…

【工具-VMware Workstation-ubuntu】

VMware Workstation-ubuntu ■ ubuntu 和 win11 共享文件夹出现在/mnt/hgfs 目录下。■■■■ ■ ubuntu 和 win11 共享文件夹出现在/mnt/hgfs 目录下。 执行 vmware-hgfsclient 显示有共享文件夹。ls 却查看不到 执行 sudo vmhgfs-fuse .host:/ /mnt/hgfs -o nonempty -o all…

初识C#(四)- 函数或方法

函数就是一个外挂的方法,以便我们自己自定义某个功能 文章目录 前言一、函数的使用1.1 函数的定义和使用1.2 函数参数分为(形参和实参)1.3 函数的返回值 二、函数的递归2.1 调用自身的函数就是递归函数 三、枚举类型3.1 枚举类型的声明与赋值 总结 前言 本篇笔记重…

时间序列分析算法

目录 1.背景介绍及应用2.时间序列核心概念与联系3.核心算法原理、步骤、数学模型公式详解3.1直接方法3.1.1 移动平均3.1.2 累计和 3.2 差分方法3.2.1 首差3.2.2 二差 3.3指数方法3.3.1 指数移动平均3.3.2指数差分 4.时间序列优缺点5.说明5.1时间序列分析与其他预测方法的区别在…