本文介绍: Apache RocketMQ是一款典型的分布式架构下的中间件产品,使用异步通信方式和发布订阅的消息传输模型。通信方式和传输模型的具体说明,请参考下文通信方式介绍和消息传输模型介绍。Apache RocketMQ产品具备异步通信的优势,系统拓扑简单、上下游耦合较低,主要用于异步解耦,流量削峰填谷等场景。分布式系统架构思想下,将复杂系统拆分为多个独立的子模块,例如微服务模块。此时就需要考虑子模块之间的远程通信,典型的通信模式分为以下两种:同步的RPC远程调用和基于中间件代理的异步通信方式。
【本文参考领域模型概述 | RocketMQ (apache.org)】基于5.0版本。
1 领域模型概述
Apache RocketMQ是一款典型的分布式架构下的中间件产品,使用异步通信方式和发布订阅的消息传输模型。通信方式和传输模型的具体说明,请参考下文通信方式介绍和消息传输模型介绍。Apache RocketMQ产品具备异步通信的优势,系统拓扑简单、上下游耦合较低,主要用于异步解耦,流量削峰填谷等场景。
1.1 Apache RocketMQ 领域模型
如上图所示,Apache RocketMQ中消息的声明周期主要分为消息生产、消息存储、消息消费三部分。
生产者生产消息并发送到Apache RocketMQ服务端,消息被存储在服务端的主题中,消费者通过订阅主题消费消息。
消息生产
1.2 通信方式介绍
1.3 消息传输模型介绍
2 主题(Topic)
2.1 定义
2.2 模型关系
2.3 内部属性
2.4 行为约束
2.5 使用建议
3 队列(MessageQueue)
3.1 定义
3.2 模型关系
3.3 内部属性
3.4 行为约束
3.5 版本兼容性
3.6 使用建议
4 消息(Message)
4.1 定义
4.2 模型关系
4.3 消息内部属性
4.4 行为约束
4.5 使用建议
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。