Home  >  Article  >  Backend Development  >  Explain what MSMQ is

Explain what MSMQ is

怪我咯
怪我咯Original
2017-03-31 11:46:392419browse

MSMQ(MicroSoft Message Queue), Microsoft Message Queue) is an asynchronous transmission mode that implements mutual communication between multiple different applications. Applications that communicate with each other can Distributed on the same machine or anywhere in a connected network space. Its implementation principle is: the sender of the message puts the information he wants to send into a container (we call it Message), and then saves it to a message queue (Message Queue) in the system's public space; locally or The remote message receiving program then takes out the message sent to it from the queue for processing.

In the message passing mechanism, there are two important concepts. One is a message and the other is a queue. Message is the information that needs to be transmitted by both parties in the communication. It can be in various media, such as text, sound, image, etc. The final understanding method of the message must be agreed upon in advance by both parties delivering the message. The advantages of this are that, firstly, it is equivalent to simply encrypting the data, and secondly, using a self-defined format can save the amount of communication. The message can contain the identification of the sender and the receiver, so that only the specified user can see the information delivered only to him and return a receipt whether the operation was successful. The message may also contain a timestamp to facilitate processing by the receiver for certain time-related applications. The message can also contain an expiration time, which indicates that if the message has not arrived within the specified time, it will be invalid. This is mainly used in applications that are closely related to time.

The message queue is a common storage space for sending and receiving messages. It can exist in memory or in a physical file. Messages can be sent in two ways, namely express mode(express)andrecoverable mode(recoverable). The difference between them is that express mode places the message in order to deliver the message quickly. In the memory, rather than on the physical disk, to obtain higher processing capabilities; in the recoverable mode, messages are written to the physical disk in each step of the transmission process to obtain better fault recovery capabilities. The message queue can be placed on the machine where the sender and receiver are located, or it can be placed on another machine alone. It is precisely because of the flexibility in the placement of message queues that the reliability of the message delivery mechanism is formed. When the machine that holds the message queue fails and is restarted, messages sent in recoverable mode can be restored to the state before the failure occurred, while messages sent in express mode are lost. On the other hand, using the message passing mechanism, the sender no longer has to worry about non-essential factors such as whether the receiver is started, whether there is a malfunction, etc. As long as the message is successfully sent, the processing can be considered completed, but in fact the other party may not even be turned on, or It might be the next day when the transaction is actually completed.
 
The benefit of using MSMQ is that because it is asynchronous communication, neither the sender nor the receiver needs to wait for the other party to return a success message, and can execute the remaining code, thus greatly improving the efficiency of things. Processing capabilities; when information is transmitted, the information sending mechanism has certain functional fault recovery capabilities; MSMQ's message passing mechanism makes it possible for both parties to communicate with each other to have different physical platforms.
Using the MSMQ function provided by Microsoft's .net platform, you can easily create or
delete message queues, send or receive messages, and even manage message queues.
In .NET products, an MSMQ class library "
System.Messaging.dll" is provided. It provides two classes to operate on message objects and message queue objects respectively. Before you can use the MSMQ function, you must make sure the MSMQ message queue component is installed on your machine and make sure the service is running. When using ASP.NETprogramming, you should use in the header:

<%@ Assembly Name=”System.Messaging”%>
<%@ Import NameSpace=”System.Messsaging”%>

Introduce the MSMQ class library into ASP.NET document.


The above is the detailed content of Explain what MSMQ is. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn