Windows(Windows Server2019)平台下的消息组件RabbitMQ的安装与使用(C#.NET使用)

 由于之前公司一直用的是MSMQ(Microsoft Message Queue),最近搭建了一个RabbitMQ,这里简单讲一下安装与使用

一、安装

1.下载并安装erlang,地址:http://www.erlang.org/downloads

选择OTP 22.0 Windows 64-bit Binary File (94094976) 下载,并安装(安装步骤就是一直下一步直到完成)

 

2.下载并安装RabbitMQ

地址:http://www.rabbitmq.com/download.html

选择Windows installer下载,并安装(也是一直下一步)

二、运行RabbitMQ

1.打开CMD,依次执行以下命令

CD C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.16\sbin

rabbitmq-plugins enable rabbitmq_management

2.打开windows图标,点击RabbitMQ Server-start,就启动了RabbitMQ服务了

此时访问:http://localhost:15672/#/ 就可以登录了,默认端口是15672,账户名密码都是:guest

3.外部访问,开放端口

当部署完成时候,你会发现,外部无法访问RabbitMQ管理页面,仅仅只有在本机上才能访问这个地址(我用的是WndowsServer2019,用虚拟机部署的,IP地址为:192.168.196.128),所以我访问:http://192.168.196.128:15672/#/,发现无法访问此页面,这是由于服务器屏蔽了这个端口,我们需要开放他

依此打开Windows防火墙-高级设置

 依此选择 入站规则-->端口

选择所有本地端口(实际应用中不建议这样,由于我是完全用来测试的,可以这样) 

然后一直下一步,就OK了

4.添加RabbitMQ账户 

开放端口之后,就可以访问RabbitMQ管理页面了,可是此时外部是无法用guest账户登录的(此账户只能在http://localhost:15672 登陆),我们需要新建一个账户

在部署服务本机访问:http://localhost:15672/ 用guest登陆,登陆进去之后,点击Admin

 依次展开Add a user-->填写新增的账户名密码信息-->点击Add user,账户就新增好了

 

不过此时还没有权限,点击你刚刚新增的admin,如下图

 

 点进去之后,可以看到如下界面

什么都不用管,点击Set permission就可以了

此时,你就可以外部用admin账户访问了

 

三、应用

C#代码模拟发送消息(生产者)与接收消息(消费者)

生产者代码

            ConnectionFactory factory = new ConnectionFactory
            {
                UserName = "admin",//用户名
                Password = "admin",//密码
                HostName = "192.168.196.128",//IP
            };
            //创建连接
            var connection = factory.CreateConnection();
            //创建通道
            var channel = connection.CreateModel();
            //声明一个队列
            channel.QueueDeclare("TestMessage", false, false, false, null);

            Console.WriteLine("\nRabbitMQ连接成功,请输入要发送的消息:");
            string input = Console.ReadLine();
            var sendBytes = Encoding.UTF8.GetBytes(input);
            channel.BasicPublish("", "TestMessage", null, sendBytes);
            channel.Close();
            connection.Close();

 消费者代码

            ConnectionFactory factory = new ConnectionFactory
            {
                UserName = "admin",//用户名
                Password = "admin",//密码
                HostName = "192.168.196.128"
            };
            //创建连接
            var connection = factory.CreateConnection();
            //创建通道
            var channel = connection.CreateModel();
            //事件基本消费者
            EventingBasicConsumer consumer = new EventingBasicConsumer(channel);
            //接收到消息事件
            consumer.Received += (ch, ea) =>
            {
                var message = Encoding.UTF8.GetString(ea.Body);
                Console.WriteLine($"收到消息: {message}");
                //确认该消息已被消费
                channel.BasicAck(ea.DeliveryTag, false);
            };            //启动消费者 设置为手动应答消息
            channel.BasicConsume("TestMessage", false, consumer);
            Console.WriteLine("消费者已启动");
            Console.ReadKey();
            channel.Dispose();
            connection.Close();

这样,一个消息队列就处理完成了

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装使用RabbitMQ,你可以按照以下步骤进行操作: 1. 首先,你需要下载合适的RabbitMQ版本。建议下载Binary版本,因为它相对简单,不需要额外的操作系统和依赖软件。你可以在官网http://www.rabbitmq.com/download.html上找到下载链接。\[2\] 2. 下载完成后,你需要启动RabbitMQ服务器。在命令行中输入命令"rabbitmq-server --detached"来启动服务器。你可以使用命令"rabbitmqctl status"来查看服务器的状态,使用命令"rabbitmqctl stop"来停止服务器。\[2\] 3. 安装完成后,你可以在你的项目引用中找到RabbitMQ.Client,并使用"using RabbitMQ.Client;"来引入RabbitMQ的命名空间。这样你就可以在你的项目中使用RabbitMQ了。\[1\] 希望这些信息对你有帮助!如果你还有其他问题,请随时提问。 #### 引用[.reference_title] - *1* [RabbitMQ安装使用](https://blog.csdn.net/q__y__L/article/details/94217121)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [RabbitMQ安装使用](https://blog.csdn.net/Tongdao/article/details/51638066)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [rabbitmq安装使用](https://blog.csdn.net/weixin_34185364/article/details/94702255)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值