安装配置MSMQ消息广播,并验证是否可以发送广播消息,过程实录。

 

1. 安装MSMQ with broadcasting support

选择安装“消息队列”,并在子选项中选择“多播支持”一起安装。

clipboard

2. 注册表修改MulticastBindIP

If Message Queueing found multiple IP addresses for the local computer. Message Queueing will use the default IP address determined by the PGM driver for multicast messages. To use a different IP address, set the \HKLM\Software\Microsoft\MSMQ\Parameters\MulticastBindIP registry value to one of the following valid IP addresses: xxx.xxx.xxx.xxx.

3. 防火墙允许protocol PGM

防火墙规则中有一个预制的规则,可以选择消息队列进行开放。

clipboard[1]

4. 确保网卡安装了“Reliable Multicast Protocol”

clipboard[2]

安装步骤

1) Open Control Panel - Network Connections

2) Right click "Local Area Connection" and select Properties.

3) Click Install...

4) Select Protocol then click Add...

5) Browse the POSReady DVD for the \I386\INF folder

6) Select NETPGM.INF and choose OK. (The edit box will just display <drive>:\I386\INF, but this is expected.)

7) Select "Reliable Multicast Protocol" then click OK.

8) Stop and Restart Message Queuing Service.

9) Multicasting messages should now start working.

5. 新建消息队列

在“Computer Management”中新建一个 Non Transactional的Private Queue。

clipboard[3]

添加上Multicast地址:

clipboard[4]

确保Security选项中,“Anonymous Logon”组具有“Send Message”的权限。新建的Private Queue 默认就会有这个权限的。

clipboard[5]

6. 测试消息广播功能是否OK

Step 1. Open "Computer Management" -> "Message Queuing" in 146 and 147 machines. There are no messages in the Queue msmqtest.

clipboard[6]

clipboard[7]

Step 2. Send a message "146 test msg 001" by MSMQ tester tool in 146 machine.

clipboard[8]

Step 3. Check msmqtest queue messages in both 146/147 machines.

After sending this message, I can find it in msmqtest queue in 146 machine.

clipboard[9]

Also find it in 147 machine.

clipboard[10].

Step 4. Receive that message by MSMQ tester tool in 147.

Press "Receive", get nothing.

clipboard[11]

But, that message is gone in 147.

clipboard[12]