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

來源:互聯網
上載者:User

標籤:rabbitmq   readline   許可權   mini   log   var   完整   es2017   使用者權限   

 

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

  5.運行結果:

   

至此C# 成功操作Rabbitmq完成

 

 


轉載請標明本文來源:http://www.cnblogs.com/yswenli/p/7446919.html
更多內容歡迎star作者的github:https://github.com/yswenli/Wenli.Data.RabbitMQ
如果發現本文有什麼問題和任何建議,也隨時歡迎交流~

 

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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.