可靠消息传递与事务详解
在分布式消息系统中,可靠消息传递是一个至关重要的概念,它不仅仅是处理断开连接的消费者的机制,更是理解分布式消息系统设计的关键。下面我们将深入探讨可靠消息传递的工作原理、相关协议以及在应用中的使用方法。
基本概念
在讨论可靠消息传递的各个部分之前,我们需要明确一些新的术语。JMS 客户端应用程序使用 JMS API,每个 JMS 供应商在客户端提供 JMS API 的实现,我们称之为客户端运行时。此外,JMS 供应商还提供某种消息“服务器”,用于实现消息的路由和传递。客户端运行时和消息服务器统称为 JMS 提供者。无论 JMS 提供者采用何种架构,JMS 系统的逻辑部分都是相同的。
提供者故障是指应用程序代码范围之外的任何故障情况,可能包括硬件故障、意外异常、软件缺陷导致的进程异常结束或网络故障。
可靠消息传递主要由三个部分组成:
- 消息自主性 :消息是自包含的自主实体。在设计分布式消息应用程序时,必须牢记这一点。消息在其生命周期内可能会在多个进程中多次发送和重发。沿途的每个 JMS 客户端都会消费消息、检查消息、执行业务逻辑、修改消息或创建新消息以完成手头的任务。从某种意义上说,JMS 客户端与系统的其他部分有一个契约:当它接收到消息时,完成其部分处理,并可能将消息(或新消息)传递到另一个主题或队列。当 JMS 客户端发送消息时,它就完成了自己的工作,消息服务器保证任何其他感兴趣的方都会收到消息。这种发送者和消息服务器之间的契约类似于 JDBC 客户端和数据库之间的契约,一旦数据交付,就被认为是“安全的”,并且脱离了客户端的控制。
- 存储 - 转发消息 </
超级会员免费看
订阅专栏 解锁全文
1452

被折叠的 条评论
为什么被折叠?



