C#操作RabbitMQ的完整實例
一、下載RabbitMQ
http://www.rabbitmq.com/install-windows.html

二、下載OTP
http://www.erlang.org/downloads

三、安裝OTP、RabbitMQ


四、配置RabbitMQ
找到bat的目錄

執(zhí)行相關命令

1.添加用戶密碼 rabbitmqctl add_user wenli wenli
2.設置wenli為管理員rabbitmqctl set_user_tags wenli administrator
3.啟動RabbitMQ的web管理rabbitmq-plugins enable rabbitmq_management
4.創(chuàng)建virtual host

5.設置用戶權限
點擊用戶名進行設置

將virtual hosts 權限賦給用戶wenli

6.創(chuàng)建Exchanges

五.創(chuàng)建C# console
1.下載RabbitMQ驅(qū)動 https://github.com/yswenli/Wenli.Data.RabbitMQ/releases/tag/Release1.0.0
2.添加引用 
3.添加配置

4.測試代碼:
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完成。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
C#窗口轉(zhuǎn)向方式(由一個窗口,跳轉(zhuǎn)到另一個窗口)
這篇文章主要介紹了C#窗口轉(zhuǎn)向方式(由一個窗口,跳轉(zhuǎn)到另一個窗口)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07
C# 批量生成隨機密碼必須包含數(shù)字和字母并用加密算法加密
這篇文章主要介紹了C# 批量生成隨機密碼必須包含數(shù)字和字母并用加密算法加密,需要的朋友參考下2017-01-01

