3.13. Message Queue Task

The Message Queue task allows you to send or receive messages from Microsoft Message Queuing (MSMQ). A message can be a string, file, or variable. The main benefit to using this task is the ability to make packages communicate with each other at runtime. You can use this to scale out your packages, having multiple packages executing in parallel with each loading a subset of the data and then checking in with the parent package after they're at certain checkpoints. You can also use this task to distribute files across your network. For example, a package running at your home office can send an inventory file to each of the message queues at the satellite offices, and then those SSIS packages could load the files into their SQL Servers.

In the General page, you specify the MSMQ Connection Manager under the MSMQConnection option. Then, you specify whether you'd like to send or receive a message under the Message option. In this page, you can also select whether you'd like to use the Windows 2000 version of MSMQ, which is by default set to false.

The bulk of the configuration is under the Send or Receive page (the one you see varies based on the Message option you selected in the General page). If you're on the Receive page, you can configure the task to remove the message from the queue after it has read it. You can also set the time-out properties here, such as whether the task will produce an error if it experiences a time-out.

No matter whether you're ...

Get Professional SQL Server™ 2005 Integration Services now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.