消息队列服务体系结构概述

消息队列服务 (MSMQ) 使用站点/企业模型。 通常,站点是物理位置,如建筑物。 企业由一个或多个站点组成,代表一个组织。

下图演示了 MSMQ 服务的体系结构。

msmq 体系结构

MSMQ 的核心是消息队列信息服务 (MQIS) 数据库,该数据库在SQL Server上运行。 企业有一个称为主企业控制器的主 MQIS。 每个站点都有自己的 MQIS,称为 主站点控制器 和零个或多个 备份站点控制器。 最后,还有单独的客户端计算机,每个客户端计算机都有自己的队列管理器,作为服务实现。 主企业控制器也可以是主站点控制器,任何控制器也可以是客户端。

消息队列可以是公共的,也可以是专用的。 公共队列在 Active Directory 中注册,可通过网络访问。 公共队列中的消息在 MSMQ 的控制下在整个企业中路由。 客户端应用程序消息通过在站点控制器的队列管理器之间移动,从客户端的队列管理器移动到目标队列。

专用队列由本地队列管理器维护,未在 Active Directory 中注册。 专用队列消息的范围仅限于它们所在的计算机。