jump to navigation

MSMQ August 12, 2005

Posted by Coolguy in Microsoft Technologies.
  • MSMQ is a component of MOM (Message Oriented Middleware) in the Microsoft world.
  • It implements asynchronous communications by enabling applications to send messages to, and receive messages from, message queues.
  • Although MSMQ middleware is sold separately with MS Backoffice software suite the MSMQ client comes with every version of Microsoft Windows.
  • The current version of MSMQ is 3.0.
  • Message Queuing-T (MSMQT), also called Biztalk Server 2004 Message Queuing, is a Biztalk Server 2004 feature that enables high-performance interoperability between Message Queuing applications and Biztalk Server 2004.
  • MSMQT listens on the standard MSMQ port for messages and ensures they are delivered straight to the BizTalk Server MessageBox via a configured pipeline. It provides a subset of Message Queuing 2.0 features

Features of MSMQ

  • Provides guaranteed message delivery, efficient routing, security, and priority-based messaging.
  • Provides loosely coupled and reliable network communications services based on a messaging queuing model.
  • It can be used to implement solutions to both asynchronous and synchronous scenarios requiring high performance.
  • Applications can use MSMQ to send and process messages regardless of whether the receiving application is running or reachable over the network.

MSMQ at work

  • The process begins when a client sends messages to a queue

  • The .Net service is responsible for pushing its outgoing messages to remote destinations.
  • After the connection with the remote machine is established the message transfer takes place.
  • If required, the receiving application can send a response message back to the original requester
  • While in transit between senders and receivers, MSMQ keeps messages in holding areas, or queues.
  • These queues protect messages from being lost in transit and provide a place for receivers to look for messages when the receivers are ready to receive them.
  • Transaction services can be used with MSMQ to ensure that the transaction completes properly.


  • JMS is a specification while MSMQ is an implementation of messaging
  • MSMQ implements a “point-to-point” style messaging to the clients while JMS API specifies a “point-to-point” and “publish-subscribe” models of messaging.
  • Both can handle synchronous or asynchronous messaging.
  • Clustering and load balancing can be used in JMS when delivering messages. MSMQ messages cannot be load balanced
  • There are various 3rd party implementations of JMS from vendors like SpiritSoft and Fiorano, which provide a Bridge to communicate with MSMQ from within a Java application


  • IBM MQSeries – This has an implementation of messaging which provides a communication mechanism between applications on different platforms. There are MQSeries bridges available to communicate with JMS as well as MSMQ
  • SoniqMQ from Progress Software– A messaging solution in Java, which JMS compliant and J2EE 1.4 compatible
  • JORAM – An open source messaging solution, which is an implementation of JMS
  • Jboss Messaging – A JMS compliant messaging solution
  • Java implementations of messaging provided by WebLogic as well as Webphere










No comments yet — be the first.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: