MSMQ 学习(1)
在 Windows Server 2008 or Windows Server 2008 R2 上安装消息队列 4.0
在服务器管理器中,单击“功能”。
在“功能摘要”下的右窗格中,单击“添加功能”。
在生成的窗口中,展开“消息队列”。
展开“消息队列服务”。
单击“目录服务集成”(用于加入域的计算机),然后单击“HTTP 支持”。
单击“下一步”,然后单击“安装”。
在 Windows 7 或 Windows Vista 上安装消息队列 4.0
打开“控制面板”。
单击“程序”,然后在“程序和功能”下单击“打开或关闭 Windows 功能”。
展开“Microsoft Message Queue (MSMQ) 服务器”,展开“Microsoft Message Queue (MSMQ) 服务器核心”,然后选中对应于以下要安装的“消息队列”功能的复选框:
MSMQ Active Directory 域服务集成(用于加入域的计算机)。
MSMQ HTTP 支持。
单击“确定”。
如果提示您重新启动计算机,请单击“确定”完成安装。
在 Windows XP 和 Windows Server 2003 上安装消息队列 3.0
打开“控制面板”。
单击“添加/删除程序”,然后单击“添加/删除 Windows 组件”。
选择“消息队列”并单击“详细信息”。
注意
如果运行的是 Windows Server 2003,请选择“应用程序服务器”来访问消息队列。
确保在详细信息页上已选中“MSMQ HTTP 支持”选项。
单击“确定”退出详细信息页,然后单击“下一步”。完成安装。
如果提示您重新启动计算机,请单击“确定”完成安装。
using System.Messaging
//生产者
class Producer
{
static void Main(string[] args)
{
string mqName = ".\\Private$\\SendShortMessageQueue";
if (!MessageQueue.Exists(mqName))
{
MessageQueue.Create(mqName);
}
var queue=new MessageQueue(mqName);
var msg=new Message();
msg.Body = "尊敬的先生,你的快递今日到达";
msg.Label = "25623015";
msg.Formatter=new XmlMessageFormatter(new Type[]{typeof(string)});
queue.Send(msg);
Console.Read();
}
}
//消费者
class Customer
{
static void Main(string[] args)
{
string mqName = ".\\Private$\\SendShortMessageQueue";
MessageQueue queue=new MessageQueue(mqName);
queue.Formatter=new XmlMessageFormatter(new Type[]{typeof(string)});
TimeSpan timeOut=new TimeSpan(0,0,0,3);
while (Console.ReadLine() != "exit")
{
Message msg=null;
try
{
msg = queue.Receive(timeOut);
}
catch
{
}
if(msg !=null)
Console.WriteLine("获取的消息标题是{0},内容是{1}",msg.Label,msg.Body as string);
else
{
Console.WriteLine("暂时没有新消息...");
}
}
}
}
MSMQ 学习(1)的更多相关文章
- MSMQ学习笔记
这几天学习了一下MSMQ,虽然不能说非常深入的了解其机制与实际用法(具体项目的实现),但也要给自己的学习做个总结.学习心得如下: 一.MSMQ即微软消息队列.用于程序之间的异步消息通信,主要的机制就是 ...
- MSMQ学习
一.理论准备 MSMQ(MicroSoft Message Queue,微软消息队列)官方的解释是:在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布 ...
- MSMQ学习笔记一——概述
一.MSMQ是什么 Message Queuing(MSMQ) 是微软开发的消息中间件,可应用于程序内部或程序之间的异步通信.主要的机制是:消息的发送者把自己想要发送的信息放入一个容器中(我们称之为M ...
- MSMQ学习笔记二——创建Message Queue队列
一.创建Message Queue队列的主要流程 1.定义MQQUEUEPROPS 结构: 2.设置消息队列属性: 3.初始化MQQUEUEPROPS 结构: 4.调用MQCreateQueue创建队 ...
- Redis学习笔记~实现消息队列比MSMQ更方便
什么是队列:简单的说就是数据存储到一个空间里(可以是内存,也可以是物理文件),先存储的数据对象,先被取出来,这与堆栈正好相反,消息队列也是这样,将可能出现高并发的数据进行队列存储,并按着入队的顺序依次 ...
- PetShop 4.0学习笔记:消息队列MSMQ
直到今天才知道,在我们每天都在用的Window系统里还有这么好用的一个编程组件:消息队列.它能够解决在大数据量交换的情况下的性能问题,特别是BS系统的数据库性能.而且它的异步处理方式能给程序员最大的便 ...
- MSMQ队列学习记录
微软消息队列-MicroSoft Message Queue(MSMQ) 使用感受:简单. 一.windows安装MSMQ服务 控制面板->控制面板->所有控制面板项->程序和功能- ...
- WCF学习之旅—WCF服务的WAS寄宿(十二)
上接 WCF学习之旅—WCF服务部署到IIS7.5(九) WCF学习之旅—WCF服务部署到应用程序(十) WCF学习之旅—WCF服务的Windows 服务程序寄宿(十一) 八.WAS宿主 IIS ...
- WCF学习之旅—TCP双工模式(二十一)
WCF学习之旅—请求与答复模式和单向模式(十九) WCF学习之旅—HTTP双工模式(二十) 五.TCP双工模式 上一篇文章中我们学习了HTTP的双工模式,我们今天就学习一下TCP的双工模式. 在一个基 ...
随机推荐
- 为什么要加入<!doctype html>这个文档声明——IE怪异模式
调试了很久,发现了一个非常细微但又十分重要的问题,又一次我在对于文档声明类型的时候,声明了如下类型 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...
- 【COGS 254】【POI 2001】交通网络图
http://www.cogs.top/cogs/problem/problem.php?pid=254 dist[i]表示能最早到达i点的时间.这样就可以用最短路模型来转移了. #include&l ...
- 【NOIP 2004】虫食算
因为一天机房都是断网状态,校内的小V评测这道题总显示Unaccept,所以下午放学后就和xiaoyimi晚上回家自习,来做一做这道题. 搜索+剪枝优化: 一开始我是顺着低位向高位填数,这么暴力在Vij ...
- MyEclipse去除网上复制下来的来代码带有的行号
作为开发人员,我们经常从网上复制一些代码,有些时候复制的代码前面是带有行号,如: MyEclipse本身自带有查找替换功能,并且支持正则表达式替换,使用正则替换就可以很容易去除这些行号 使用快捷键“c ...
- 100114D
这道题用暴力水过了,蒟蒻是这么想的:枚举两个端点,找最小值,因为shift只能用一次,但是这样10^9*2.5要t,所以减掉只有一个黑点的情况,然后复杂度变为10^9*0.6 #include< ...
- C语言中数组名作为参数进行函数传递
用数组名作函数参数与用数组元素作实参有几点不同. 1) 用数组元素作实参时,只要数组类型和函数的形参变量的类型一致,那么作为下标变量的数组元素的类型也和函数形参变量的类型是一致的.因此,并不要求函数的 ...
- 算法与数据结构之顺序查找(C语言)
#include<stdio.h> #include<stdlib.h> //顺序查找基本思想:从线性表的一端开始,逐个检查关键字是否满足给定的条件 int Sequentia ...
- Android Studio :Android Studio 与 Gradle 深入【二】
转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=255063&extra=page%3D2%26filter%3Dautho ...
- 代理IP收集
做系统攻击和防守时都有用! http://www.xicidaili.com/ http://www.data5u.com/ http://ip.zdaye.com/ http://www.youda ...
- centos卸载console-kit-da
最近发现系统多出来 很多 console-kit-da 及它的子进程 占用了不少资源 which console-kit-da(很奇怪 为什么找不到执行文件) rpm -qa | grep -i co ...