一个C#操作RabbitMQ的完整例子

时间:2023-03-08 15:52:01
一个C#操作RabbitMQ的完整例子

一、下载RabbitMQ

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

一个C#操作RabbitMQ的完整例子

二、下载OTP

http://www.erlang.org/downloads

一个C#操作RabbitMQ的完整例子

三、安装OTP、RabbitMQ

一个C#操作RabbitMQ的完整例子

一个C#操作RabbitMQ的完整例子

四、配置RabbitMQ

找到bat的目录

一个C#操作RabbitMQ的完整例子

执行相关命令

一个C#操作RabbitMQ的完整例子

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 

一个C#操作RabbitMQ的完整例子

5.设置用户权限

点击用户名进行设置

一个C#操作RabbitMQ的完整例子

将virtual hosts 权限赋给用户wenli

一个C#操作RabbitMQ的完整例子

6.创建Exchanges

一个C#操作RabbitMQ的完整例子

五.创建C# console

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

2.添加引用     一个C#操作RabbitMQ的完整例子

3.添加配置

一个C#操作RabbitMQ的完整例子

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();
}
}); Console.WriteLine("正在出队"); Task.Factory.StartNew(() =>
{
while (true)
{
var result = operation.Dnqueue(); if (result == null)
{
Thread.Sleep();
}
else
{
Console.WriteLine(Encoding.UTF8.GetString(result));
}
}
}); Console.ReadLine(); Console.WriteLine("正在取消订阅"); operation.UnSubscribe(); Console.WriteLine("测试完成");
}
}
}

5.运行结果:

一个C#操作RabbitMQ的完整例子

一个C#操作RabbitMQ的完整例子

一个C#操作RabbitMQ的完整例子

至此C# 成功操作Rabbitmq完成

转载请标明本文来源:http://www.cnblogs.com/yswenli/p/7446919.html
更多内容欢迎star作者的github:https://github.com/yswenli/Wenli.Data.RabbitMQ
如果发现本文有什么问题和任何建议,也随时欢迎交流~