ArticleslgStudy

science

Microsoft Message Queuing

Microsoft Message Queuing is a science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Microsoft Message Queuing rather than just read about it. In short: Microsoft Message Queuing (MSMQ) is a message queue implementation developed by Microsoft and deployed in its Windows Server operating systems since Windows NT 4 and Windows 95. Windows Server 2016 and Windows 10 also includes this component.

Key takeaways

  • Microsoft Message Queuing belongs to science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Microsoft Message Queuing to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Microsoft Message Queuing from memory before moving on to harder problems.

Reference excerpt

Microsoft Message Queuing (MSMQ) is a message queue implementation developed by Microsoft and deployed in its Windows Server operating systems since Windows NT 4 and Windows 95. Windows Server 2016 and Windows 10 also includes this component. In addition to its mainstream server platform support, MSMQ has been incorporated into Microsoft Embedded platforms since 1999 and the release of Windows CE 3.0.

Overview MSMQ is a messaging protocol that allows applications running on separate servers/processes to communicate in a failsafe manner. A queue is a temporary storage location from which messages can be sent and received reliably, as and when conditions permit. This enables communication across networks and between computers, running Windows, which may not always be connected. By contrast, sockets and other network protocols assume that direct connections always exist. MSMQ has been available to developers on Microsoft platforms since 1997, and has commonly been used in enterprise software built with Visual Studio, both in the native pre-.NET incarnation (version 5 and 6), and in Visual Studio .NET. Microsoft also has incorporated MSMQ in its messaging technology framework, Windows Communication Foundation (WCF). Under WCF, MSMQ can be used for providing secure, reliable transport with a unified programming model compatible with other communications standards. MSMQ is responsible for reliably delivering messages between applications inside and outside the enterprise. MSMQ ensures reliable delivery by placing messages that fail to reach their intended destination in a queue and then resending them once the destination is reachable. It also supports security and priority based messaging. Dead letter queues can be created for looking at messages which timed out or failed for other reasons. MSMQ supports both durable and non-durable messaging to make a trade off between performance or consistency by writing messages to disk or only in RAM. Non-durable messaging can only be achieved by sending express messages via non-transactional queues. MSMQ also supports transactions. It permits multiple operations on multiple queues, with all of the operations wrapped in a single transaction, thus ensuring that either all or none of the operations will take effect. Microsoft Distributed Transaction Coordinator (MSDTC) supports transactional access to MSMQ and other resources to achieve transactional exact once processing. The following ports are used for Microsoft Message Queuing operations:

TCP: 1801 RPC: 135, 2101*, 2103*, 2105* UDP: 3527, 1801 * These port numbers may be incremented by 11 if the initial choice of RPC port is being used when Message Queuing initializes. Port 135 is queried to discover the 2xxx ports.

Version references Version 1.0 (May 1997). Supports Windows 95, Windows NT 4.0 SP3, Windows 98 and Windows Me. Version 2.0, included with Windows 2000. New features include: Support for registering public message queues in Active Directory, 128-bit encryption and digital certificate support, full COM support for message properties (achieving functional parity with the Win32 API function calls, full DNS path name support, improved performance in multi-threaded applications. Version 3.0, included with Windows XP (Professional, not Home Edition) and Windows Server 2003. New features include: Internet Messaging (referencing queues via HTTP, SOAP-formatted messages, MSMQ support for Internet Information Services), queue aliases, multicasting of messages, and additional support for programmatic maintenance and administration of queues and MSMQ itself. Version 4.0, part of Windows Vista and Windows Server 2008. New features include: Subqueues, improved support for "poison messages" (messages which continually fail to be processed correctly by the receiver), and support for transactional receives of messages from a remote queue. Version 5.0, part of Windows 7 and Windows Server 2008 R2. New features include: support for Secure Hash Algorithm 2.0 (SHA2) and all advanced hash algorithms that are supported in Windows 2008 R2; by default, weaker hash algorithms are disabled. Version 6.0, part of Windows 8 and Windows Server 2012. Version 6.3, part of Windows 8.1 and Windows Server 2012 R2.

Uses MSMQ is heavily used in various Windows Platform-based contact center applications which uses this service for internal notifications and services.

See also List of Microsoft Windows components IBM MQ, similar techonolgy by IBM Java Message Service, similar technology on the Java platform Amazon Simple Queue Service, commoditized messaging service provided by Amazon.com for a per-use fee. It allows users to rent access to messaging without having to maintain their own server. RabbitMQ, open source message queue broker that implements a pre-standard version of AMQP.

References

External links Documentation

Worked examples

Example 1 — a first encounter with Microsoft Message Queuing

Start with the simplest possible case. Write down what Microsoft Message Queuing claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Microsoft Message Queuing before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Microsoft Message Queuing ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Microsoft Message Queuing

In research
Microsoft Message Queuing appears in science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Microsoft Message Queuing in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Microsoft Message Queuing is common in secondary-school and first-year university syllabi. It links to neighbouring topics Enterprise application integration, Message-oriented middleware, Windows communication and services, so understanding it makes those chapters shorter.
In everyday life
Look for Microsoft Message Queuing outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Microsoft Message Queuing in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Microsoft Message Queuing means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Microsoft Message Queuing out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Microsoft Message Queuing in simple terms?

Microsoft Message Queuing (MSMQ) is a message queue implementation developed by Microsoft and deployed in its Windows Server operating systems since Windows NT 4 and Windows 95. Windows Server 2016 and Windows 10 also includes this component.

Why does Microsoft Message Queuing matter?

Because it connects several science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Microsoft Message Queuing?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Microsoft Message Queuing.

Tags

  • Enterprise application integration
  • Message-oriented middleware
  • Windows communication and services
  • Windows components

Keep exploring