C#操作RabbitMQ的完整实例

作者:YSWALLE 时间:2022-05-05 19:41:05 

一、下载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(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的完整实例

C#操作RabbitMQ的完整实例

C#操作RabbitMQ的完整实例

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

来源:http://www.cnblogs.com/yswenli/archive/2017/08/29/7446919.html

标签:C#,RabbitMQ
0
投稿

猜你喜欢

  • 如何解决通过spring-boot-maven-plugin package失败问题

    2021-10-16 15:43:45
  • SpringBoot下的值注入(推荐)

    2023-04-01 04:45:01
  • Java多线程Atomic包操作原子变量与原子类详解

    2023-08-18 07:46:25
  • 深入理解Java设计模式之组合模式

    2023-09-02 02:06:25
  • java图片格式转换的三段代码

    2023-01-22 05:43:02
  • C#实现上位机与欧姆龙PLC通讯(FINS)

    2022-10-05 03:10:08
  • TKmybatis的框架介绍和原理解析

    2022-08-28 21:35:42
  • C#禁止textbox复制、粘贴、剪切及鼠标右键的方法

    2022-08-21 09:13:40
  • Spring main方法中如何调用Dao层和Service层的方法

    2023-11-28 23:15:19
  • 深入浅析c#静态多态性与动态多态性

    2022-10-16 09:41:17
  • 使用C#开发OPC Server服务器源码解析

    2021-05-30 04:30:14
  • Java Spring Dubbo三种SPI机制的区别

    2022-05-04 00:29:51
  • C#读写Config配置文件案例

    2022-10-22 20:11:09
  • 轻松理解Java面试和开发中的IoC(控制反转)

    2023-08-10 03:00:35
  • Java 实战项目之在线点餐系统的实现流程

    2022-08-05 04:11:35
  • 基于CXF搭建webService的实例讲解

    2023-07-02 10:41:34
  • 利用源码编译Android系统的APK和可执行命令的方法

    2023-12-22 13:09:46
  • Android中EditText光标在4.0中的bug及解决方法

    2023-10-01 19:24:17
  • 详解Java如何改变字符串中的字符

    2022-06-13 14:29:48
  • Spring Cloud Eureka 服务上下线监控的实现

    2022-02-18 21:06:15
  • asp之家 软件编程 m.aspxhome.com