在本地计算机上创建的所有触发器都在“计算机管理”的细节窗格中列出。若要查看该列表,请单击触发器文件夹下控制台树中的“触发器”。对于每个触发器,默认情况下细节窗格中将显示下列内容:

  • 触发器名称

  • 被监视队列名称

  • 附加到触发器的规则数目

  • 触发器是否已启用

  • 触发器是否已序列化

  • 消息处理类型

创建触发器之前,请确认已为运行“消息队列触发器”服务的帐户授予必需的权限。对于将与具有检索或事务性检索处理类型的触发器关联的所有现有队列,“扫视消息”权限和“接收消息”权限是必需的。

创建触发器后,可以向其附加现有规则。

创建触发器

创建触发器的步骤
  1. 打开“计算机管理”。

  2. 在控制台树中的触发器文件夹下,右键单击“触发器”

    位置?

    • 计算机管理/服务和应用程序/消息队列/触发器/触发器

  3. 指向“新建”,然后单击“触发器”

  4. “新建触发器”对话框首页上的“触发器名称”中,为新触发器键入名称。

  5. 如果要将用户定义的队列指定为 monitored queue,请在“队列路径名”中键入触发器将以 ComputerName\QueueName 语法(对于本地计算机,则为 .\QueueName 语法)与其关联的队列路径。(请勿使用格式名。)或者,请单击计算机上自动创建的队列的名称。

  6. 选择“扫视”“检索”“事务性检索”以指定消息处理的类型。

  7. 选中“启用”复选框可以将触发器配置为启用;清除“启用”复选框可以将其配置为禁用。

  8. 选中“序列化”复选框可以将触发器配置为序列化;清除“序列化”复选框可以将其配置为未序列化,然后单击“下一步”

  9. “新建触发器”对话框的第二页上,将现有规则附加到触发器上,在“规则”列表中选择一种规则,然后单击“附加”

  10. 若要从触发器中删除规则,请在“附加规则”列表中选择某个规则,然后单击“分离”

  11. 若要更改触发器规则的测试顺序,请单击“向上”“向下”按钮。

  12. 得到所需的附加规则列表后,单击“完成”

其他注意事项

  • 若要打开 Windows(R) 7 上的“计算机管理”,请单击“开始”,右键单击“计算机”,然后单击“管理”

  • 若要打开 Windows Server(R) 2008 R2 上的“计算机管理”,请依次单击“开始”“所有程序”“管理工具”,然后单击“计算机管理”

  • 还可以通过按如下方式打开“新建触发器”对话框,从控制台树中被监视队列下的触发器文件夹执行此过程:右键单击“触发器”,指向“新建”,然后单击“触发器”。此时,该队列自动成为被监视队列。

  • “队列路径名”中键入将与触发器关联的用户队列名称后,将验证该队列确实存在。如果未找到具有所键入名称的队列,将显示错误消息。

  • 触发器可以是序列化触发器或非序列化触发器。序列化触发器测试每条消息上与其关联的所有规则的条件。在按消息到达的顺序移动到下一条消息之前,它执行所有适用的操作。但是,因为在同一时间处理消息,所以其吞吐量比非序列化触发器低。

    而非序列化触发器吞吐量较高,但是可能无法按消息到达顺序对消息执行给定的操作。例如,当同时处理多个消息时就会发生这种情况。如果为特定的队列创建了多个触发器且至少对其中一个进行了序列化,则所有触发器都将表现为已序列化的触发器,即使没有将其定义为已序列化。只能对事务性检索处理类型的触发器进行序列化。如果消息处理顺序非常重要,则最好对每个队列只使用一个触发器并启用系列化选项,因为触发器触发的顺序是随机的。消息的特定全局唯一标识符 (GUID) 不影响该顺序。

  • 默认情况下,“消息队列触发器”服务将在网络服务帐户下运行。在网络服务帐户下运行“消息队列触发器”服务时,它不与桌面交互。如果需要此功能,则可在“计算机管理”中将“消息队列触发器”服务配置为在本地系统帐户下运行,并启用与桌面的交互。作为安全性最佳操作,请勿将默认帐户更改为较低安全帐户,除非绝对必要。“消息队列触发器”服务必须在具有管理员权限的帐户下运行。

  • 在调用由触发器调用的可执行文件时,所使用的安全特权与分配给“消息队列触发器”服务的安全特权相同。

  • 删除队列时,不会删除与该队列相关的触发器。如果后来重新创建了同一名称的队列,则此队列将使用所有现有的触发器。但是,直到计算机重新启动或者相关触发器被禁用然后再次启用后,“消息队列触发器”服务才会监视此重新创建的队列。有关设置触发器的启用或禁用属性的信息,请参阅查看或更改触发器的属性和规则[初步文档]

其他参考


目录