参考:https://my.oschina.net/loveorange/blog/3026473

安装参考链接:

1. 下载自己需要的rabbitmq_server(http://www.rabbitmq.com/download.html)版本和erlang环境(http://www.erlang.org/downloads)。

2. 先安装erlang环境,并添加环境变量。

control panel --> (Viewed By Category)选择System and Security -->选择System

环境变量添加可参考https://my.oschina.net/loveorange/blog/3026473

3. 验证erl是否安装成功

以管理员身份输入cmd打开控制面板,输入erl验证是否安装成功

4. 安装rabbitmq

安装完成后 cmd 命令到安装目录下的sbin 目录 键入命令: rabbitmq-plugins.bat enable rabbitmq_management  开启插件

键入: rabbitmq-server  启动MQ

浏览器http://localhost:15672/ 访问MQ的主页 初始化密码和用户名都是: guest

5. rabbitmq在.NET中的简单应用

一、 程序准备

(1)浏览器中打开QM主页后,添加用户。(如果没有添加有权限的用户,则无法在程序中创建连接

(2)初始添加用户后,用户没有权限,显示如下:

此时, 鼠标点击用户名test,点击set permission 为该用户设置权限

 二、 程序实现

生产者:

namespace Send
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Start!");
IConnectionFactory conFactory = new ConnectionFactory//创建连接工厂对象
{
HostName = "10.64.228.211",
Port = ,
UserName = "wl",
Password = ""
};
using (IConnection con = conFactory.CreateConnection())//创建连接
{
using (IModel channel = con.CreateModel())//创建通道
{
// 创建交换机
string queueName = "testQueue1";
string exchangeName = "exchangeTest1";
string routingKey = "routingKeyTest1";
channel.ExchangeDeclare(exchangeName, ExchangeType.Direct); //创建一个消息队列并绑定到交换机上
channel.QueueDeclare(queueName, true, false, false, null);
channel.QueueBind(queueName, exchangeName,routingKey,null); //Console.WriteLine("消息内容:");
string message = string.Empty;
for (int i= ; i< ; i++)
{
message = Thread.CurrentThread.ManagedThreadId + i.ToString();
byte[] body = Encoding.UTF8.GetBytes(message);//消息内容
//发送消息到消息队列
channel.BasicPublish(exchangeName, routingKey, null, body);
} // Console.Write("成功发送消息:" + message);
}
} }
}
}

启动该服务,可以在rabbitmq的主页中看到接收的消息。

消费者

namespace Receive
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
IConnectionFactory conFactory = new ConnectionFactory//创建连接工厂对象
{
HostName = "10.64.228.211",
Port = ,
UserName = "wl",
Password = ""
};
using (IConnection conn = conFactory.CreateConnection())//创建连接
{
using (IModel channel = conn.CreateModel())//创建通道
{
// 取出消息
string queueName = "testQueue1"; //创建消费者对象
var consumer = new EventingBasicConsumer(channel);
consumer.Received += (model, ea) =>
{
byte[] message = ea.Body;//接收到的消息
Encoding.UTF8.GetString(message);
}; //消费者开启监听
var consumeResult = channel.BasicConsume(queueName, true,consumer);
Console.ReadKey();
}
} }
}
}

启动消费服务,mq会消费队列中消息。

显示消息已经被消费。

rabbitmq安装及简单demo练习的更多相关文章

  1. RabbitMQ安装以及简单操作应用(针对Windows和C#)

    1.RabbitMQ安装 1.1下载并安装Erlang https://www.erlang.org/downloads 一直点next就安装好了.我直接使用了默认的安装目录.否则的话,应该需要配置一 ...

  2. 【RabbitMQ】ubuntu下RabbitMQ安装与简单使用

    参考:https://blog.csdn.net/the_fool_/article/details/80570971 1.安装: https://blog.csdn.net/a295277302/a ...

  3. 【RabbitMQ】RabbitMQ在Windows的安装和简单的使用

    版本说明 使用当前版本:3.5.4 安装与启动 在官网上下载其Server二进制安装包,在Windows上的安装时简单的,与一般软件没什么区别. 安装前会提示你,还需要安装Erlang,并打开下载页面 ...

  4. 在cengos中安装zabbix server/agent, 并创建一个简单demo

    添加zabbix更新源 rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch ...

  5. python中RabbitMQ的使用(安装和简单教程)

    1,简介 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现的产品,RabbitMQ是一个消息代理,从"生产者"接收消息 ...

  6. RabbitMQ学习系列(二): RabbitMQ安装与配置

    上一篇,简单介绍了RabbitMQ的情况还有一些相关的概念,这一篇,会讲讲 RabbitMQ安装与配置. 1.安装 Rabbit MQ 是建立在强大的Erlang OTP平台上,因此安装RabbitM ...

  7. RabbitMQ安装实践

    背景: 最近一个项目的测试环境需要用到rabbitMQ,但运维和开发都没时间,于是自己试着安装了一发,发现安装很简单,记一笔如下: 安装步骤 查看官网上有不同的安装方法,可使用下载安装包或者直接通过其 ...

  8. RabbitMQ安装配置

    安装RabbitMQ windows下的安装是非常简单的,我们需要准备两个东西 erlang的环境  下载windows和与之对象的操作系统位数安装包 http://www.erlang.org/do ...

  9. RabbitMQ 一二事 - 简单队列使用

    消息队列目前流行的有三种 1. RabbitMQ 2. ActiveMQ 3. Kafka 这三种都非常强大,RabbitMQ目前用的比较多,也比较流行,阿里也在用 ActiveMQ是阿帕奇出品,但是 ...

随机推荐

  1. bean的autowire属性及其生命周期

    一:sutowire属性 1.no:默认值,禁用自动装配: 2.byName:根据属性名称自动装配: 3.byType:根据属性类型自动装配: 4.constructor:通过构造方法自动装配,不推荐 ...

  2. 07 MySQL常用内置函数

    常用函数     1.字符串函数         CONCAT(str1,str2,..,strN)             将str1,str2..strN 拼接成一个字符串,当这里有任何一个为NU ...

  3. GNS3 ip route 命令解析

    ip route 120.94.0.0 255.254.0.0 172.16.252.1ip route 192.168.0.0 255.255.0.0 10.10.10.119ip route 21 ...

  4. SpringMVC核心

    DispatcherServlet是前端控制器设计模式的实现,提供Spring Web MVC的集中访问点,而且负责职责的分派,与spring IoC容器无缝集成. 主要用作职责调度工作,本身主要用于 ...

  5. ADLS_pppoe 基本设置过程

    ADLS_pppoe 设置: ①:开启接口的PPPoe功能——pppoe enable ②:指明接口是拨号池1的成员——pppo-client dial-pool-number ③:创建一个逻辑上的拨 ...

  6. 解决dispatch 后在当前页面不能获取最新的this.props中的数据

    因为dispatch为异步方法  .解决这个问题方法很多  出去添加定时器这种不是很优雅的方法  我们可以用 componentWillReceiveProps(nextProps) 这个生命周期  ...

  7. 八十五、SAP中的ALV创建之四,去掉主键背景色

    一.我们执行程序之后,发现表格中所有的内容都是有底色的 二.这个是因为我们在代码中规定了主键 三.我们去掉处理第一个之外的主键 四.运行程序,发现还是所有字段都有背景色 五.这是因为在每次ls_fie ...

  8. SQL分组后获取其中一个字段最大值的整条记录

    SELECT * FROM( SELECT id,name,counts,createDate,row_number() OVER(partition BY name ORDER BY createD ...

  9. java高并发核心类 AQS(Abstract Queued Synchronizer)抽象队列同步器

    什么是AQS? 全称: Abstract Queued Synchronizer: 抽象队列同步器 是 java.util.concurrent.locks包下的一个抽象类 其编写者: Doug Le ...

  10. Glusterfs volume 的三种挂载方式

    在上一篇中我们介绍了Glusterfs在CentOS7上的安装,并且提到Glusterfs client端有三种:Native client,NFS,Samba, 今天我们就来一起学习下这三种方式. ...