这几天在折腾MSMQ,之前对于这玩意也是没有实际用过。下面是这几天的成果,拿出来给大家Share一下:
1。关于MSMQ相关知识和配置的文档:
https://files.cnblogs.com/CopyPaster/MSMQ_Doc.rar
4个FQA:
如何访问远程的私有队列?
如何修改消息队列的最大存储限制?
如何修改消息队列的默认存储位置?
如何保证计算机重启之后队列中的消息还在?
https://files.cnblogs.com/CopyPaster/MSMQ_FAQ.rar
2。示范Demo:
https://files.cnblogs.com/CopyPaster/Msmq.PerfermanceTest.rar
功能说明:
Send 发送消息
Receive 接收消息
AsyncReceive 异步接收消息
SendWithTransaction 带事物发送消息
ReceiveWithTransaction 带事物接收消息
AsyncReceiveWithTransation 带事物异步接收消息
Start QueueListener 启动消息监听
Stop QueueListener 停止消息监听
PS:
Demo运行前,请按照App.Config里信息手工建立对应消息队列(没有用过的朋友,参考1中文档)。
为什么我用代码建?首先MessageQueue.Exists()不支持FormatName Path。其次对于一些权限,在代码中指定可能会有问题,比如说因为操作系统的不同。所以,我的主张,对于MSMQ的应用,事先手工建立好队列比较安全。