MSMQ上的私人和公共队列

时间:2010-08-03 08:47:40

标签: msmq

服务器A是否可以从服务器B访问专用队列?

1 个答案:

答案 0 :(得分:14)

公共队列和专用队列之间几乎没有功能差异,除了MSMQ在Active Directory(AD)中发布有关公共队列的信息。

我自己从未这样做过,但看起来如果您知道私有队列的完整路径,则可以从其他服务器访问它:

  

私人队列

     

专用队列是不是的队列   发布在Active Directory中并且是   仅在本地计算机上显示   包含它们。私人队列   具有以下特点:

     

消息队列注册私有   通过存储一个本地队列   LQS中队列的描述   (本地队列存储)目录   本地电脑。在MSMQ 2.0中,和   消息队列3.0,默认值   位置是   %WINDIR%\ SYSTEM32 \ MSMQ \存储\ LQS。   请注意每个公众的描述   在本地计算机上创建的队列是   也存储在一个单独的文件中   在LQS文件夹中。

     

私人队列已注册   本地计算机,不在目录中   服务,通常不能   位于其他消息队列   应用

     

专用队列只能访问   通过消息队列应用程序   知道完整的路径名,直接   格式名称或私有格式   队列名称,如下所示:

     

路径   名称:计算机名\私人$ \ QUEUENAME

     

本地计算机上的路径名称:   \私人$ \ QUEUENAME。

     

直接格式名称::   DIRECT = ComputerAddress \ PRIVATE $ \ PrivateQueueName。

     

私人格式名称:   PRIVATE = ComputerGUID \ QueueNumber。

     

有关路径名和的更多信息   格式名称,请参阅队列名称。

     

私人队列具有优势   没有目录服务开销,制作   它们更快创建,没有延迟   访问它们,没有复制   开销。

     

专用队列不依赖于   目录服务,因而可以   在目录中创建和删除   服务不起作用。这很有用   用于离线操作。

     

私有队列的一种方式   暴露于其他应用程序是由   设置消息属性。至   分发私人的位置   队列,一个应用程序可以发送一个   私有队列的格式名称为   a的响应队列属性   消息。

Ref