微服务架构设计模式-(7)进程间通信

分类

  • 一对一
    • 同步、异步
      • 同步:实时响应
      • 异步:客户请求不阻塞,服务可以非实时响应
  • 一对多
    • 同步:无
    • 异步
      • 发布/订阅
        • 客户发送信息,被订阅者消费
      • 发布/异步响应
        • 客户发布消息,等待感兴趣的服务响应

进程间通信的本质是交换消息

  • 消息格式
    • 文本
      • json
      • xml
    • 二进制

RPI(远程过程调用)

  • 同步的远程过程调用
  • 过程
    • 客户端调用RPI代理(适配器)
    • 服务端有RPI服务器(适配器)

REST

  • http协议的进程间通信
    • 资源
      • url表示
    • 动词
      • POST
      • GET

GRPC

  • 基于二进制消息的协议
  • 消息格式
    • Protocol Buffers

同步消息会降低可用性

  • 用异步消息完全替代同步不可能
  • 解决方案
    • 使用消息通道解决
      • 消息通道缓存消息,直到消息被接受处理

猜你喜欢

转载自blog.csdn.net/u014704998/article/details/128876282