.
This commit is contained in:
33
docs/tutorial-basics/rpc.md
Normal file
33
docs/tutorial-basics/rpc.md
Normal file
@@ -0,0 +1,33 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
title: 远程调用 RPC
|
||||
description: RPC 远程调用,Remote Procedure Call,RPC
|
||||
---
|
||||
|
||||
# RPC远程调用
|
||||
|
||||
## 什么是 RPC
|
||||
> RPC 是一种通过网络将远程过程调用(Remote Procedure Call,RPC)封装成消息,并传送到远程服务器上的过程。
|
||||
> 
|
||||
|
||||
## 使用场景
|
||||
> 在分布式环境下,通过 RPC 可以在两个应用之间进行消息传递,实现远程调用。
|
||||
|
||||
## rpc的订阅-调用基础示例
|
||||
### 被调用端
|
||||
```java
|
||||
// 订阅 rpc-b 事件, 参数类型为 String
|
||||
zhub.rpcSubscribe("rpc-b", IType.STRING, r -> {
|
||||
String str = r.getValue();
|
||||
System.out.println("接收到 b 事件:" + str);
|
||||
return r.render("接收到 b 事件:" + str);
|
||||
});
|
||||
```
|
||||
### 调用端
|
||||
```java
|
||||
// 调用 rpc-b 事件, 参数类型为 String,返回类型为 String
|
||||
RpcResult<String> rpcResult = zhub.rpc("rpc-b", "hello rpc", IType.STRING);
|
||||
String result = rpcResult.getResult();
|
||||
System.out.println("rpc result:" + result);
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user