知识卡片

三种分布式通信机制对应三类服务契约

结构图卡 · 1976.l

内容

微服务架构下主要的分布式通信机制有三种——REST、RPC、消息传递,它们正好对应服务契约设计中的服务资源契约、服务行为契约和服务事件契约。REST遵循HTTP+JSON、面向资源、用统一接口操作资源(Spring Cloud为代表);RPC提供类本地化的远程方法调用、面向服务行为、封装网络寻址(Dubbo为代表);消息传递引入消息队列解除发布者与订阅者的耦合、面向事件、异步非阻塞(Kafka为代表)。发散:把”通信机制”和”契约类型”对齐记忆,就能从业务契约的性质反推该选哪种通信机制,而非凭技术偏好拍板。

结构图:

flowchart LR
    R[REST/HTTP+JSON] --> RC[服务资源契约·面向资源]
    P[RPC/Dubbo] --> PC[服务行为契约·面向服务行为]
    M[消息传递/Kafka] --> MC[服务事件契约·面向事件]
    RC --> U[统一接口操作资源]
    PC --> V[类本地化远程方法调用]
    MC --> W[发布订阅·异步解耦]

参考来源

- 位置:《解构领域驱动设计》第18章《领域驱动设计的战略考量》18.2.2(源文件:_epub-src/OEBPS/031.xhtml) - 结论依据:原文明确三种通信机制正好对应服务资源契约、服务行为契约和服务事件契约,并各选代表框架讨论其影响。 - 原始内容:主要采用的分布式通信机制包括:REST、RPC、消息传递……它们也正好对应服务契约设计中定义的服务资源契约、服务行为契约和服务事件契约。