加载中...
消息代理是一种位于消息发送方与接收方之间的中间件,负责接收、路由、转换和投递消息。它使应用无需直接连接即可可靠通信,提供解耦、缓冲、路由和保证投递的能力,是异步集成的核心组件。

| 中文名 | 消息代理 |
| 英文名 | Message Broker |
| 定位 | 集成中间件 |
| 核心能力 | 路由、缓冲、可靠投递 |
| 典型实现 | RabbitMQ、ActiveMQ、Kafka |
消息代理模式(Message Broker)指在分布式系统中引入一个专门的中间件,充当消息发送方与接收方之间的枢纽。发送方把消息交给代理,代理负责验证、路由、可能的格式转换,并最终把消息投递给一个或多个接收方,双方无需知道彼此的物理位置。
消息代理是企业集成模式中的核心角色,解决了应用间点对点直连带来的紧耦合和网状复杂度问题。它把 N 对 N 的连接简化为各应用只连接到代理。常见实现包括 RabbitMQ、ActiveMQ、Apache Kafka 以及各类云消息服务,支持队列(点对点)和主题(发布-订阅)两种主要模型。
消息代理广泛用于微服务异步通信、系统间数据集成、任务队列与后台作业分发、订单与通知等业务事件传递,以及跨异构系统的协议与格式转换。它是构建高可用、可扩展分布式系统的基础设施。
问:消息代理和消息队列是一回事吗?答:不完全是。消息队列是一种基础的存储转发结构;消息代理是更完整的中间件,在队列之上还提供路由、转换、协议适配等能力,常内部包含多个队列。
问:引入消息代理有什么代价?答:代理本身成为关键基础设施,需保证高可用,否则会成为单点故障;同时增加了运维复杂度、延迟以及消息顺序与重复的处理难度。

| 中文名 | 消息代理 |
| 英文名 | Message Broker |
| 定位 | 集成中间件 |
| 核心能力 | 路由、缓冲、可靠投递 |
| 典型实现 | RabbitMQ、ActiveMQ、Kafka |
登录 后参与讨论
暂无讨论,来发表第一条评论吧