【微服务专题之】.Net6下集成消息队列上-RabbitMQ 微信公众号:趣编程ACE关注可了解更多的.NET日常实战开发技巧,如需源码 请公众号后台留言 源码;[如果觉得本公众号对您有帮助,欢迎关注] .Net中RabbitMQ的使用 【微服务专题之】.Net6下集成消息队列上-RabbitMQ【文字+视频】 超清观看视频哦~ 代码演示 -详细见代码注释,操作看上文视频 生产者代码 1using RabbitMQ.Client; 2using System.Text; 3 4 5// 创建一个连接工厂 6var factory = new ConnectionFactory() 7{ 8 Uri = new Uri("amqp://guest:guest@localhost:5672") 9}; 10// 工厂开始连接 11using (var connection = factory.CreateConnection()) 12// 创建一个连接通道 13using (var channel = connection.CreateModel()) 14{ 15 channel.QueueDeclare(queue: "hello", 16 // 持久性 一直保持 直到消费者 消费队列 17 durable: true, 18 // 独占 19 exclusive: false, 20 autoDelete: false, 21 arguments: null); 22 23 // 发送的消息 24 string message = "Hello World!"; 25 var body = Encoding.UTF8.GetBytes(message); 26 27 // 基本发布 不指定交换 28 channel.BasicPublish(exchange: "", 29 // 路由键 就是队列名称 30 routingKey: "hello", 31 // 基础属性 32 basicProperties: null, 33 // 传递的消息体 34 body: body); 35 Console.WriteLine(" [x] Sent {0}", message); 36} 37 38Console.WriteLine(" Press [enter] to exit."); 39Console.ReadLine(); 消费者代码 1using RabbitMQ.Client; 2using RabbitMQ.Client.Events; 3using System.Text; 4 5// 创建一个连接工厂 6var factory = new ConnectionFactory() 7{ 8 Uri = new Uri("amqp://guest:guest@localhost:5672") 9}; 10using (var connection = factory.CreateConnection()) 11using (var channel = connection.CreateModel()) 12{ 13 channel.QueueDeclare(queue: "hello", 14 durable: true, 15 exclusive: false, 16 autoDelete: false, 17 arguments: null); 18 19 // 创建一个消费者基本事件 20 var consumer = new EventingBasicConsumer(channel); 21 consumer.Received += (model, ea) => 22 { 23 var body = ea.Body.ToArray(); 24 var message = Encoding.UTF8.GetString(body); 25 Console.WriteLine(" [x] Received {0}", message); 26 }; 27 channel.BasicConsume(queue: "hello", 28 // 自动确认 29 autoAck: true, 30 consumer: consumer); 31 32 Console.WriteLine(" Press [enter] to exit."); 33 Console.ReadLine(); 环境安装 docker下安装RabbitMQ镜像 1// 详细解释看视频 2docker run -d --hostname my-rabbit --name rabbitmq -p 15672:15672 -p 5672:5672 rabbitmq 3 4//这一段必须需要 否则网站起不来 其中 c71119561de6 为容器ID 5docker exec -it c71119561de6 rabbitmq-plugins enable rabbitmq_management RabbitMQ是个轻量级,易部署的队列,我会根据官网指导,分享一系列常用使用技巧的,随时保持关注哦~ 相关文章: