Using Managed Microsoft Message Queue
Managed Messaging and Queuing service allows creation of queues, which can receive and store messages. We will create a request queue for requests to the licensed resource and a response queue for results. Our application has to be able to send data to the MSMQ input queue and we will need to implement a mechanism to remove that data from the queue, perform the calculation and post the results back on the MSMS queue
* MSMQ will maintain input and output queues.
* Queuing and scheduling server (QSS) will consist of a listener reading messages from the input queue, deserializing and calculating and posting results to the output queue.
* Calculator will post messages to the input queue and will wait for results on the output queue.
Managed MSMQ Message can be any user defined or built in type, and it is automatically serialized by the .NET runtime. This offers an option of either passing the data to be evaluated by the licensed component or marshalling the component itself.
Passing data provides best performance when a moderate amount of input and output data needs to be passed between the WS and QSS. Marshalling a reference to the licensed resource may be a good alternative when the marshalling cost is smaller than the amount of input and output data (e.g. Data Set). Ultimately, only benchmarking can provide a reliable indication of the performance for either architecture. I hope your company’s benchmarking budget has already been allocated -:).
http://csharpcomputing.com/Reviews/MSMQ.htm
aleksey on 11.14.04 @ 09:21 PM PST [link]