1. 程式人生 > >【訊息佇列】MSMQ(一)——微軟訊息佇列簡介及安裝

【訊息佇列】MSMQ(一)——微軟訊息佇列簡介及安裝

一、前言

      從這篇部落格開始小編就從一個簡單的例項來展示一下訊息佇列中MSMQ的基本使用方法,展示一下他對訊息的增刪改查,訊息佇列有很多種樣式,做.NET開發的程式猿,最容易安裝的就是MSMQ,所以小編先向大家介紹一下MSMQ。

二、特點

      Message Queue,微軟訊息佇列)是在多個不同的應用之間實現相互通訊的一種非同步傳輸模式,相互通訊的應用可以分佈於同一臺機器上,也可以分佈於相連的網路空間中的任一位置。

      它的實現原理是:訊息的傳送者把自己想要傳送的資訊放入一個容器中(我們稱之為Message),然後把它儲存至一個系統公用空間的訊息佇列(Message Queue)中;本地或者是異地的訊息接收程式再從該佇列中取出發給它的訊息進行處理。

三、名詞解釋

3.1 訊息

      訊息是由通訊的雙方所需要傳遞的資訊。它可以是各式各樣的媒體,如文字、聲音、圖象等等。

      訊息最終的理解方式,為訊息傳遞的雙方事先商定,這樣做的好處是,一是相當於對資料進行了簡單的加密,二則採用自己定義的格式可以節省通訊的傳遞量。

      訊息可以含有傳送和接收者的標識,這樣只有指定的使用者才能看到只傳遞給他的資訊和返回是否操作成功的回執。訊息也可以含有時間戳,以便於接收方對某些與時間相關的應用進行處理。訊息還可以含有到期時間,它表明如果在指定時間內訊息還未到達則作廢,這主要應用與時間性關聯較為緊密的應用。

3.2 佇列

      佇列是傳送和接收訊息的公用儲存空間,它可以存在於記憶體中或者是物理檔案中。有兩種主要的佇列型別:由您或網路中的其他使用者建立的佇列和系統佇列。

1) 使用者佇列:

  • “公共佇列”在整個“訊息佇列”網路中複製,並且有可能由網路連線的所有站點訪問。

  • “專用佇列”不在整個網路中釋出。相反,它們僅在所駐留的本地計算機上可用。專用佇列只能由知道佇列的完整路徑名或標籤的應用程式訪問。

  • “管理佇列”包含確認在給定“訊息佇列”網路中傳送的訊息回執的訊息。指定希望 MessageQueue 元件使用的管理佇列(如果有的話)。

  • “響應佇列”包含目標應用程式接收到訊息時返回給傳送應用程式的響應訊息。指定希望 MessageQueue 元件使用的響應佇列(如果有的話)。

2) 系統佇列:

  • “日記佇列”可選地儲存傳送訊息的副本和從佇列中移除的訊息副本。每個“訊息佇列”客戶端上的單個日記佇列儲存從該計算機發送的訊息副本。在伺服器上為每個佇列建立了一個單獨的日記佇列。此日記跟蹤從該佇列中移除的訊息。

  • “死信佇列”儲存無法傳遞或已過期的訊息的副本。如果過期或無法傳遞的訊息是事務性訊息,則被儲存在一種特殊的死信佇列中,稱為“事務性死信佇列”。死信儲存在過期訊息所在的計算機上。有關超時期限和過期訊息的更多資訊,請參見預設訊息屬性。

  • “報告佇列”包含指示訊息到達目標所經過的路由的訊息,還可以包含測試訊息。每臺計算機上只能有一個報告佇列。

  • “專用系統佇列”是一系列儲存系統執行訊息處理操作所需的管理和通知訊息的專用佇列。

      在應用程式中進行的大多數工作都涉及訪問公共佇列及其訊息。但是,根據應用程式的日記記錄、確認和其他特殊處理需要,在日常操作中很可能要使用幾種不同的系統佇列。

四、安裝訊息佇列

      使用MSMQ進行軟體開發需要安裝MSMQ,安裝完後就該進入實際的開發階段。具體的安裝過程就是在控制面板裡“新增/刪除程式”下“新增/刪除Windows元件”,完成新增就OK。安裝完成後就可以通過互動界新增新的訊息佇列,詳細如下圖:


這裡寫圖片描述 這裡寫圖片描述 這裡寫圖片描述 這裡寫圖片描述 這裡寫圖片描述

五、小結

      整個搭建的過程還是比較方便的,按照步驟來就很容易搭建。可以看出,搭建MQ的服務還是比較方便的。

      下一篇部落格向大家介紹一下對MSMQ的增刪改查以及非同步操作