消息从生成方客户端传送到代理。
代理读取消息。
消息被放置到持久性存储库当中(出于可靠性的考虑)。
代理确认收到消息(出于可靠性的考虑)。
代理确定消息的路由。
代理写出消息。
消息从代理传送到使用方客户端。
使用方客户端确认收到消息(出于可靠性的考虑)。
代理处理客户端确认(出于可靠性的考虑)。
代理确定已经处理客户端确认。
因为这些步骤是连续的,所以任何步骤都可能成为消息从生成方客户端到使用方客户端的传送过程的瓶颈。这些步骤中的大多数都取决于消息传送系统的物理特征:网络带宽、计算机处理速度和消息服务体系结构等等。但是,有一些步骤还取决于消息传送应用程序的特征和该应用程序要求的可靠性级别。
以下各节讨论应用程序设计因素和消息传送系统因素这二者对性能的影响。尽管应用程序设计和消息传送系统因素在消息传送过程中紧密交互,但它们彼此是独立的。