亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C#操作RabbitMQ的完整實(shí)例

 更新時(shí)間:2017年08月29日 11:19:40   作者:YSWALLE  
這篇文章主要為大家詳細(xì)介紹了C#操作RabbitMQ的完整實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

一、下載RabbitMQ

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

二、下載OTP

http://www.erlang.org/downloads

三、安裝OTP、RabbitMQ

四、配置RabbitMQ

找到bat的目錄

執(zhí)行相關(guān)命令

1.添加用戶密碼 rabbitmqctl add_user wenli wenli

2.設(shè)置wenli為管理員rabbitmqctl set_user_tags wenli administrator

3.啟動(dòng)RabbitMQ的web管理rabbitmq-plugins enable rabbitmq_management

4.創(chuàng)建virtual host

5.設(shè)置用戶權(quán)限

點(diǎn)擊用戶名進(jìn)行設(shè)置

將virtual hosts 權(quán)限賦給用戶wenli

6.創(chuàng)建Exchanges

五.創(chuàng)建C# console

1.下載RabbitMQ驅(qū)動(dòng) https://github.com/yswenli/Wenli.Data.RabbitMQ/releases/tag/Release1.0.0

2.添加引用

3.添加配置

4.測(cè)試代碼:

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("正在入隊(duì)");

      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("正在出隊(duì)");



      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("測(cè)試完成");
    }
  }
}

5.運(yùn)行結(jié)果:

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

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論