GoLang版的RPC简介

本文介绍了RPC的基本概念,并通过GoLang展示了如何实现服务端和客户端的RPC通信。服务端接收客户端字符串并拼接返回,客户端通过HTTP协议进行调用。此外,还提及了以太坊中的RPC应用。
摘要由CSDN通过智能技术生成

在说以太坊的RPC前,先来解释RPC是什么。

RPC简介

RPC全称是Remote Procedure Call,即远程过程调用。它可用于相同编程语言之间调用,也可用于不同编程语言间的调用。本文以golang语言来实现服务端和客户端的RPC实现。

RPC的GoLang版Demo

RPC 服务端的作用是提供服务,让客户端可以调用服务端的方法。为了实现简单,本文准备是Demo是接收客户端的一个字符串,然后和服务端的一个字符串拼接后返回到客户端。


第一步,声明一个服务的对象,该对象下可以包含多个供客户端调用的方法,这些方法通常会传入两个参数,第一个参数用来传递客户端发过来的请求数据,第二个参数用来返回服务端发给客户端的响应数据,而方法的返回值则是一个 error


第二步,把上述声明的服务对象注册到rpc服务中,然后启动一个 TCP 监听,然后把 RPC 服务放到 TCP 上为客户端提供服务。


RPC 服务可以放到很多种类的连接上,比如以太坊,就提供了 InProc、IPC、HTTP、WS 四种方式。其中,InProc 是进程内部调用,即 localConsoleIPC 是进程间通信,即 remoteConsole,传入的参数可能是.ipc文件的路径,也可能是http地址,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值