Windows平台安装与使用RabbitMQ
来源:互联网 发布:构造函数 java 编辑:程序博客网 时间:2024/05/27 14:14
1. 首先需要下载Erlang, RabbitMQ基于Erlang语言开发:
这里下载19.3 Windows 64-bit的:
运行安装即可:
2. 下载RabbitMQ windows平台版本:
安装(安装时会提示是否elr.exe访问私有网络,点击允许即可)
启动RabbitMQ后,它将以服务的方式运行:
默认情况下,对RabbitMQ的Web管理页面是没有开启的,需要手动开启:
开启后,默认端口为15672,默认用户为guest,其密码为:guest,注意,该用户只能在localhost域名下访问,外网是无法访问的,需要添加用户并分配角色,登陆后页面如下:
3. 上面安装完后,现在使用C#语言来测试使用以下。在.NET平台,需要先安装.Net Rabbit客户端:
这里下载3.6.10版本的,面对.Net4.5版本的:
添加环境变量:
4. 创建消费者测试项目并添加引用:
添加对RabbitMQ.Client.dll的引用。编辑cs文件如下:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using RabbitMQ.Client;using RabbitMQ.Client.Events;namespace TestRabbitMQConsumer{ class Program { static void Main(string[] args) { var conn_factory = new ConnectionFactory(); conn_factory.HostName = "localhost"; conn_factory.UserName = "guest"; conn_factory.Password = "guest"; IConnection conn = conn_factory.CreateConnection(); IModel channel = conn.CreateModel(); // 创建信道 channel.ExchangeDeclare("jim-exchange", ExchangeType.Direct, true, false, null); channel.QueueDeclare("jim-queue", false, false, false, null); channel.QueueBind("jim-queue", "jim-exchange", "jim"); QueueingBasicConsumer consumer = new QueueingBasicConsumer(channel); // 订阅消费者 String consumer_tag = channel.BasicConsume("jim-queue", false, consumer); // 开始消费 while (true) { // 处理发来的消息 BasicDeliverEventArgs event_args = (BasicDeliverEventArgs)consumer.Queue.Dequeue(); //消息为空则停止执行并等待消息到来 IBasicProperties msg_props = event_args.BasicProperties; String msg_body = Encoding.ASCII.GetString(event_args.Body); channel.BasicAck(event_args.DeliveryTag, false); if (msg_body == "quit") { channel.BasicCancel(consumer_tag); break; } else { Console.WriteLine($"Receive Message Body: {msg_body}"); } } Environment.Exit(0); } }}
运行该消息消费者,因为还没有消息,因此,空白:
在Web管理后台我们可以看到一些相关信息:
5. 创建了消息消费者后,现在来实现消息生产者,创建新项目,对RabbitMQ.Client.dll引用同第4步配置,修改cs文件代码如下:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using RabbitMQ.Client;using RabbitMQ.Client.Events;namespace TestRabbitMQProducer{ class Program { static void Main(string[] args) { var conn_factory = new ConnectionFactory(); conn_factory.HostName = "localhost"; conn_factory.UserName = "guest"; conn_factory.Password = "guest"; IConnection conn = conn_factory.CreateConnection(); IModel channel = conn.CreateModel(); channel.ExchangeDeclare("jim-exchange", ExchangeType.Direct, true, false, null); String msg_body = "I am producer."; IBasicProperties msg_props = channel.CreateBasicProperties(); msg_props.ContentType = "text/plain"; channel.BasicPublish("jim-exchange", "jim", msg_props, Encoding.ASCII.GetBytes(msg_body)); Environment.Exit(0); } }}
生产者让交换器"jim-exchange",以键"jim"投递了消息,这样,在消费者端,就会按预定配置,获取消息体msg_body,消息体需要字节数组,因此这里使用Encoding.ASCII.GetBytes()来进行转换。
现在来启动消息生产者,并看看消费者是否能收到消息:
可以看到,消息传递成功了。我们也可以使用Web端来发送一个消息"haha",也能投递成功:
这里基于 .Net 平台实现消息生产和消费,同样,很方便可以移植到Java或python等其他平台上,实现系统异构化。
阅读全文
0 0
- Windows平台安装与使用RabbitMQ
- RabbitMQ安装与使用
- java + RabbitMq 安装与简单使用(windows下)
- windows上安装使用rabbitmq
- Windows平台上Docker安装与使用
- rabbitmq的安装与使用
- RabbitMQ的安装与使用
- Windows中 RabbitMQ安装与环境变量配置
- Windows中 RabbitMQ安装与环境变量配置
- Windows中 RabbitMQ安装与环境变量配置
- Windows RabbitMQ服务端安装与配置详解
- Windows中 RabbitMQ安装与环境变量配置
- Windows下RabbitMQ使用指南(安装、使用)
- Java与RabbitMQ(一) Windows环境使用rabbitmq
- Windows平台下ADB的安装与使用
- git的安装与使用(一)--windows平台
- Windows平台下ADB的安装与使用
- Windows平台音视频服务器 Darwin Streaming Server安装与使用
- MacOS命令收集
- outline of discrete mathematics and its applications(1.4-1.7)
- Android客户端与服务器交互方式(1)
- jQuery中this与$(this)的区别总结
- 【资源分享】史上最好的PS视频,没有之一
- Windows平台安装与使用RabbitMQ
- Android客户端与服务器交互方式(2)
- Linux如何查看进程、杀死进程、启动进程等常用命令
- 东北大学校园网登录登出shell脚本
- 递归5.递归函数--进制转换(十进制转二进制)
- php_jq_ajax
- leetcode108. Convert Sorted Array to Binary Search Tree
- 闪屏效果splash
- 使用requests爬取豆瓣电影top250