博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RabbitMQ入门
阅读量:4563 次
发布时间:2019-06-08

本文共 2283 字,大约阅读时间需要 7 分钟。

  1. 下载安装
    1. RabbitMQ  
    2. Erlang   
  2. 启用管理工具
    1. 打开 RabbitMQ Command Prompt (sbin dir) 输入命令:
      rabbitmq-plugins enable rabbitmq_management
    2. 停止:net stop RabbitMQ
      启动:net start RabbitMQ
    3. 在浏览器中输入地址查看:
    4. 使用默认账号登录:guest/ guest
  3. Install-Package RabbitMQ.Client
  4. 生产消息
    var factory = new ConnectionFactory() { HostName = "localhost", UserName = "guest", Password = "guest", };            using (var connection = factory.CreateConnection())            using (var channel = connection.CreateModel())            {                channel.QueueDeclare(queue: "writeLog", durable: false, exclusive: false, autoDelete: false, arguments: null);                for (int i = 0; i < 8000; i++)                {                    string message = i.ToString()+","+Thread.CurrentThread.ManagedThreadId;                    var body = Encoding.UTF8.GetBytes(message);                    channel.BasicPublish(exchange: "", routingKey: "writeLog", basicProperties: null, body: body);                    Console.WriteLine("Program Sent {0}", message);                }            }
    View Code

     

  5. 消费消息
    var factory = new ConnectionFactory() { HostName = "localhost", UserName = "guest", Password = "guest", VirtualHost = "/" };            using (var connection = factory.CreateConnection())            using (var channel = connection.CreateModel())            {                channel.QueueDeclare(queue: "writeLog",                                     durable: false,                                     exclusive: false,                                     autoDelete: false,                                     arguments: null);                var consumer = new EventingBasicConsumer(channel);                consumer.Received += (model, ea) =>                {                    var body = ea.Body;                    var message = Encoding.UTF8.GetString(body);                    ExcuateWriteFile(message);                    Console.WriteLine(" Receiver Received {0}", message);                };                channel.BasicConsume(queue: "writeLog",                                     autoAck: true,                                     consumer: consumer);                Console.WriteLine(" Press [enter] to exit.");                Console.ReadLine();            }
    View Code

     

 

转载于:https://www.cnblogs.com/herocany/p/11164195.html

你可能感兴趣的文章
session共享
查看>>
MongoDB divide 使用之mongotempalte divide
查看>>
style不同取值对应的日期、时间格式
查看>>
三星S5_G9008V 解锁联通4G(安卓6.0)
查看>>
android 设置横屏
查看>>
censoring--kmp匹配删减子字符串
查看>>
[git] 更新单个或者指定文件
查看>>
UIImangeView的用法
查看>>
阿里云SDK手册之java SDK
查看>>
js获取select标签选中的值[转]
查看>>
mysql连接出现error node【1045】
查看>>
踩vue的bug
查看>>
Ansible安装及配置
查看>>
浅析Sql Server参数化查询
查看>>
CodeBlocks 配置
查看>>
机器学习:随机森林
查看>>
[网络流24题] 试题库问题
查看>>
面试分享:应届前端面试经历
查看>>
Essentially No Barriers in Neural Network Energy Landscape
查看>>
A pure L1-norm principal component analysis
查看>>