go小白入门 | 青训营笔记

54 阅读2分钟

青训营课程笔记

这是我参与「第五届青训营 」伴学笔记创作活动的第 14 天,今天主要学习了rpc相关概念、rpc框架设计、rpc实践分享,并结合实践案例进行学习。

简介

RPC 是远程过程调用的缩写,是一种通信机制,允许一个计算机程序在不同的地址空间(通常是不同的计算机)中运行的程序互相通信。

作用

RPC 框架是一个专门解决远程通信问题的软件架构,它允许程序员编写一个程序在另一台计算机上运行的服务端程序,并在客户端上调用它。客户端和服务端在不同的程序中运行,但是交互通过网络进行。

结合工作

实际的工作中,RPC 框架常常用于分布式系统。比如,假设您有一个用于管理用户账户的 Web 应用,它们可以在不同的计算机上运行。如果您使用 RPC 框架,您可以在每台计算机上编写一个程序,它们互相通信来处理用户账户。

实践

RPC(Remote Procedure Call)允许你从一个应用程序在不同的计算机上调用另一个应用程序的函数或方法。
下面是理解之后搭建一个简单的RPC框架的步骤:
1.首先定义接口:定义一个简单的接口,指定可以远程调用的方法。
2.服务端实现:实现接口的具体方法,在服务端上运行。
3.客户端实现:在客户端上实现远程调用,使用网络协议(如HTTP,TCP等)与服务端通信。
4.序列化:将数据序列化为字节数组,以便在网络上传输。
5.反序列化:将字节数组反序列化为对象,以便在服务端上使用。
6.返回结果:服务端执行远程调用,并将结果返回给客户端。

以上步骤可以使用任何编程语言实现,并且可以使用现有的RPC框架(如gRPC,Thrift等)来简化实现。总的来说,RPC的核心思想是通过网络来实现函数调用,从而允许不同计算机上的应用程序进行通信。希望这些信息对您有帮助。