z-docs/docs/tutorial-extras/rpc.md

978 B
Raw Blame History

sidebar_position
1

RPC远程调用

什么是 RPC

RPC 是一种通过网络将远程过程调用Remote Procedure CallRPC封装成消息并传送到远程服务器上的过程。 zhub-fun.png

使用场景

在分布式环境下,通过 RPC 可以在两个应用之间进行消息传递,实现远程调用。

rpc的订阅-调用基础示例

被调用端

  // 订阅 rpc-b 事件, 参数类型为 String
  zhub.rpcSubscribe("rpc-b", IType.STRING, r -> {
      String str = r.getValue();
      System.out.println("接收到 b 事件:" + str);
      return r.render("接收到 b 事件:" + str);
  });

调用端

  // 调用 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);