【5种常见的rpc封装方案】

1)回调(唯一callbackId)

1.显式回调写法 // 自己封装callbackId

send(msgId, req, (data)->{

})

隐式回调写法:

send(msgId, req);

ResHandler(data){

}

协程其实也算是隐式的写法,毕竟协程只能在进程内通信,只不过算是等到对方回复后,我们是在有个地方等待处理。

2)Promise+thenAccept

send(msgId, req).thenAccept()

3)同步rpc写法

dubbo 或者 自己写的结合CountDownLatch实现同步rpc。

或者干脆是http。

或者是grpc。

4)await

ET的写法,较为优雅,但是只有c#语言有。

5)MQ的发布订阅

用的也多,比如:杨中科的英语网站微服务之间的通信封装为EventBus。

基于nats的pub和sub。

相关推荐

  1. 5常见rpc封装方案

    2024-01-11 18:14:01       52 阅读
  2. 常见Http请求方式

    2024-01-11 18:14:01       27 阅读
  3. 常见远程过程调用(RPC)分析

    2024-01-11 18:14:01       61 阅读
  4. 常用scss工具方法封装

    2024-01-11 18:14:01       36 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-11 18:14:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-11 18:14:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-11 18:14:01       87 阅读
  4. Python语言-面向对象

    2024-01-11 18:14:01       96 阅读

热门阅读

  1. vue安装

    vue安装

    2024-01-11 18:14:01      53 阅读
  2. 使用Docker运行SRS Stack

    2024-01-11 18:14:01       66 阅读
  3. 实现本地存储函数useLocalStorage

    2024-01-11 18:14:01       67 阅读
  4. bool和BOOL的区别

    2024-01-11 18:14:01       48 阅读
  5. LLaMA Efficient Tuning

    2024-01-11 18:14:01       53 阅读
  6. Redis的基本命令和数据类型

    2024-01-11 18:14:01       55 阅读
  7. QT第1天

    QT第1天

    2024-01-11 18:14:01      58 阅读
  8. 合泰HT32F65C40F 串口驱动 例:UART0 数据收发

    2024-01-11 18:14:01       67 阅读