RabbitMQ 的 简单使用

 

队列的 思想  大概 就是 先进先出,当然 不是 从进的地方出去,呵呵  在使用 rabbitmq 的 时候感觉 也是 这样。发送(进),接收(出)

rabbitmq  在安装好了之后 会有一个 默认的 guest 账号,现在 先建立一个新的账号  test

使用提供的 工具  设置

rabbitmqctl add_user Test root    // 添加Test 用户,密码为 root

rabbitmqctl set_user_tags Test administrator    //  Test 的 角色 为 administrator

rabbitmqctl set_permissions -p / Test ".*" ".*" ".*"   // 设置 Test 的权限

 

rabbitmqctl list_users  // 查看用户

rabbitmq: rabbitmqctl stop_app    // 关闭

 rabbitmqctl reset                          // 还原

rabbitmqctl start_app                 // 启动

 

 

///发送消息 

 

var factory = new ConnectionFactory();     //创建连接工厂并初始化 
factory.HostName = "localhost";
factory.UserName = "Test";
factory.Password = "123456";

 

 

using (var connection = factory.CreateConnection())   // 创建一个连接
{
using (var channel = connection.CreateModel())        // 创建一个通道
{
channel.QueueDeclare("VideoTest", false, false, false, null);  // 创建 一个队列


for (int i = 0; i < 10; i++)
{


string message = "发送消息到服务器进行保存" + i;

var body = Encoding.UTF8.GetBytes(message);
channel.BasicPublish("", "VideoTest", null, body);     //发送数据
Console.WriteLine(" set {0}", message);

} 
}
}
Console.ReadLine();

 

 

这样 就可以得到  10 条数据了 

 

///  接收数据 

 1 Console.WriteLine("开始接受数据");
 2 
 3 
 4 var factory = new ConnectionFactory();
 5 factory.HostName = "localhost";
 6 factory.UserName = "Test";
 7 factory.Password = "123456";
 8 
 9 using (var connection = factory.CreateConnection())
10 {
11 using (var channel = connection.CreateModel())
12 {
13 channel.QueueDeclare("VideoTest", false, false, false, null);
14 
15 var consumer = new QueueingBasicConsumer(channel);
16 channel.BasicConsume("VideoTest", true, consumer);
17 
18 Console.WriteLine(" waiting for message.");
19 while (true)
20 {
21 var ea = (BasicDeliverEventArgs)consumer.Queue.Dequeue();
22 
23 var body = ea.Body;
24 var message = Encoding.UTF8.GetString(body);
25 Console.WriteLine("Received {0}", message);
26 
27 }
28 }
29 }
30 
31 Console.ReadLine();
32 
33  

 

 

 当接收到了, 会发现 队列中的数据 被删掉了

 

posted on 2017-03-02 17:32  元点之始  阅读(256)  评论(0编辑  收藏  举报

导航