MSMQ消息队列安装
一、Windows 7安裝、管理消息隊(duì)列
1、安裝消息隊(duì)列???執(zhí)行用戶必須要有本地 Administrators 組中的成員身份,或等效身份。
???具體步驟:?
???開(kāi)始—》控制面板—》程序—》程序和功能—》打開(kāi)或關(guān)閉Windows功能—》依次展開(kāi)Microsoft Message Queue (MSMQ) 服務(wù)器、Microsoft Message Queue (MSMQ) 服務(wù)器核心—》確定
???如果系統(tǒng)提示您重新啟動(dòng)計(jì)算機(jī),請(qǐng)單擊“確定”以完成安裝。2、管理消息隊(duì)列
???計(jì)算機(jī)—》右鍵—》管理—》服務(wù)和應(yīng)用程序—》消息隊(duì)列。二、Windows Server?2008安裝、管理消息隊(duì)列
1、安裝消息隊(duì)列
???開(kāi)始—》控制面板—》管理工具—》服務(wù)器管理器—》功能—》添加功能—》依次展開(kāi)MSM、MSMQ服務(wù)—》確定。2、管理消息隊(duì)列
???計(jì)算機(jī)—》右鍵—》管理—》功能—》消息隊(duì)列。三、創(chuàng)建、刪除和管理隊(duì)列
???要開(kāi)發(fā)MSMQ程序就必須學(xué)習(xí)一個(gè)很重要的類(MessageQueue),該類位于名稱空間System.Messageing下。常用方法:
???--Create()方法:創(chuàng)建使用指定路徑的新消息隊(duì)列。
???--Delete()方法:刪除現(xiàn)有的消息隊(duì)列。
???--Existe()方法:查看指定消息隊(duì)列是否存在。
???--GetAllMessages()方法:得到隊(duì)列中的所有消息。
???--GetPublicQueues()方法:在“消息隊(duì)列”網(wǎng)絡(luò)中定位消息隊(duì)列。
???--Peek()/BeginPeek()方法:查看某個(gè)特定隊(duì)列中的消息隊(duì)列,但不從該隊(duì)列中移出消息。
???--Receive()/BeginReceive()方法:檢索指定消息隊(duì)列中最前面的消息并將其從該隊(duì)列中移除。
???--Send()方法:發(fā)送消息到指定的消息隊(duì)列。
???--Purge()方法:清空指定隊(duì)列的消息。常用屬性:
???--Priority:設(shè)置消息優(yōu)先級(jí),MessagePriority枚舉里全部進(jìn)行了封裝,MessagePriority.High();
??????????????AboveNormal:hight與Normal消息優(yōu)先級(jí)之間;
??????????????High:高級(jí)消息優(yōu)先級(jí);
??????????????Highest:最高消息優(yōu)先級(jí);
??????????????Low:低消息優(yōu)先級(jí);
??????????????Lowest:最低消息優(yōu)先級(jí);
??????????????Normal:普通消息優(yōu)先級(jí);
??????????????VeryHigh:Highest和High消息優(yōu)先級(jí)之間;
??????????????VeryLow:Low和Lowest消息優(yōu)先級(jí)之間;四、發(fā)送和序列化消息
???MSMQ消息隊(duì)列中定義的消息由一個(gè)主體(body)和若干屬性構(gòu)成。消息的主體可以由文本、二進(jìn)制構(gòu)成,根據(jù)需要還可以被加密。
???在MSMQ中消息的大小不能夠超過(guò)4MB。發(fā)送消息是通過(guò)Send方法來(lái)完成的,需要一個(gè)Message參數(shù)。1、發(fā)送消息:
???步驟:連接隊(duì)列-->指定消息格式-->提供要發(fā)送的數(shù)據(jù)(主體)-->調(diào)用Send()方法將消息發(fā)送出去。詳細(xì)見(jiàn)后面的示例程序。2、序列化消息:
???消息序列化可以通過(guò).NET Framework附帶的三個(gè)預(yù)定義格式化程序來(lái)完成:
???-- ?XMLMessageFormatter對(duì)象----MessageQueue組件的默認(rèn)格式化程序設(shè)置。
???-- ?BinaryMessageFormatter對(duì)象;
???-- ?ActiveXMessageFormatter對(duì)象;?
???由于后兩者格式化后的消息通常不能為人閱讀,所以我們經(jīng)常用到的是XMLMessageFormatter對(duì)象。該對(duì)象構(gòu)造方法有三種重載:
???1、public XmlMessageFormatter();
???2、public XmlMessageFormatter(string[] targetTypeNames);
???3、public XmlMessageFormatter(Type[] targetTypes);
???如我們后面的示例程序中用到的序列化語(yǔ)句:
???//序列化為字符串
???XmlMessageFormatter formatter = new XmlMessageFormatter(new Type[] { typeof(string) });五、讀取和接收消息
1、讀取消息:
???也就是從指定隊(duì)列中獲取消息。
2、接收消息有兩種方式:
???--> 通過(guò)Receive()方法。
???--> 通過(guò)Peek()方法。
總結(jié)
以上是生活随笔為你收集整理的MSMQ消息队列安装的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 关于使用QQ、新浪微博、腾讯微博等第三方
- 下一篇: 民生银行信用卡取现额度是多少