C#操作RabbitMQ的完整实例

一、下载RabbitMQ

http://www.rabbitmq.com/install-windows.html

二、下载OTP

http://www.erlang.org/downloads

三、安装OTP、RabbitMQ

四、配置RabbitMQ

找到bat的目录

执行相关命令

1.添加用户密码 rabbitmqctl add_user wenli wenli

2.设置wenli为管理员rabbitmqctl set_user_tags wenli administrator

3.启动RabbitMQ的web管理rabbitmq-plugins enable rabbitmq_management

4.创建virtual host

5.设置用户权限

点击用户名进行设置

将virtual hosts 权限赋给用户wenli

6.创建Exchanges

五.创建C# console

1.下载RabbitMQ驱动 https://github.com/yswenli/Wenli.Data.RabbitMQ/releases/tag/Release1.0.0

2.添加引用

3.添加配置

4.测试代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
using System;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
 
namespace Wenli.Data.RabbitMQ.Console
{
   using Console = System.Console;
 
   class Program
   {
     static void Main( string [] args)
     {
       Console.Title = "Wenli.Data.RabbitMQ.Console" ;
       Console.WriteLine( "正连接到mq" );
 
       try
       {
         Test();
       }
       catch (Exception ex)
       {
         Console.WriteLine( "err:" + ex.Message + ex.Source + ex.StackTrace);
       }
 
       Console.Read();
     }
 
 
     static void Test()
     {
 
       var topic = "testtopic" ;
 
       var cnn = RabbitMQBuilder.Get(MQConfig.Default).GetConnection();
 
       var operation = cnn.GetOperation(topic);
 
       Console.WriteLine( "正连接到订阅【" + topic + "】" );
 
       operation.Subscribe();
 
       Console.WriteLine( "正在入队" );
 
       Task.Factory.StartNew(() =>
       {
         while ( true )
         {
           operation.Enqueue(Encoding.UTF8.GetBytes(DateTime.Now.ToString( "yyyy-MM-dd HH:mm:ss.fff" ) + "   hello!" ));
           Thread.Sleep(1);
         }
       });
 
 
 
 
       Console.WriteLine( "正在出队" );
 
 
 
       Task.Factory.StartNew(() =>
       {
         while ( true )
         {
           var result = operation.Dnqueue();
 
           if (result == null )
           {
             Thread.Sleep(1);
           }
           else
           {
             Console.WriteLine(Encoding.UTF8.GetString(result));
           }
         }
       });
 
       Console.ReadLine();
 
       Console.WriteLine( "正在取消订阅" );
 
       operation.UnSubscribe();
 
       Console.WriteLine( "测试完成" );
     }
   }
}

5.运行结果:

至此C# 成功操作Rabbitmq完成。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

原文链接:http://www.cnblogs.com/yswenli/archive/2017/08/29/7446919.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值