上一讲说了rabbitmq在windows环境的部署,而今天主要说一下消息在产生后,如何去查看消息,事实上,rabbitmq为我们提供了功能强大的管理插件,我们只要开启这个插件即可,它也是一个网站,端口是15672,走Http协议的,它每秒会从消息服务器中拉取最新的消息,以便让我们看到最新的queue!
一 开始消息管理系统
1 打开命令行工具
2 输入下面指令来开启消息管理系统
rabbitmq-plugins enable rabbitmq_management
3 在浏览器中输入http://127.0.0.1:15672,用户名和密码都是guest,然后就可以查看我们的队列信息了
二 像RabbitMQ推送消息
1 安装C#对应的包包
<packages> <package id="RabbitMQ.Client" version="3.6.6" targetFramework="net45" /> </packages>
2 编写测试代码
var factory = new ConnectionFactory() { HostName = "localhost" }; using (var connection = factory.CreateConnection()) { using (var channel = connection.CreateModel()) { //声明queue channel.QueueDeclare(queue: "hello",//队列名 durable: false,//是否持久化 exclusive: false,//排它性 autoDelete: false,//一旦客户端连接断开则自动删除queue arguments: null);//如果安装了队列优先级插件则可以设置优先级 string message = "Hello Lind!";//待发送的消息 var body = Encoding.UTF8.GetBytes(message); channel.BasicPublish(exchange: "",//exchange名称 routingKey: "hello",//如果存在exchange,则消息被发送到名称为hello的queue的客户端 basicProperties: null, body: body);//消息体 Console.WriteLine(" [x] Sent {0}", message); } }
三 RabbitMQ在命令行里的其它指令介绍
后台管理15672系统,是通过向rabbitmq中开启一个插件来实现的,而在命令行中我们还可以干很多事,下面看一下:
1). 服务器启动与关闭
启动: rabbitmq-server –detached
关闭:rabbitmqctl stop
若单机有多个实例,则在rabbitmqctlh后加–n 指定名称
2). 插件管理
开启某个插件:rabbitmq-pluginsenable xxx
关闭某个插件:rabbitmq-pluginsdisablexxx
注意:重启服务器后生效。
3).virtual_host管理
新建virtual_host: rabbitmqctladd_vhost xxx
撤销virtual_host:rabbitmqctl delete_vhost xxx
4). 用户管理
新建用户:rabbitmqctl add_user xxxpwd
删除用户: rabbitmqctl delete_user xxx
改密码: rabbimqctlchange_password {username} {newpassword}
设置用户角色:rabbitmqctlset_user_tags {username} {tag ...}
Tag可以为 administrator,monitoring, management
感谢各位的阅读,下一讲我们将介绍MQ里的拉消息!
本文转自博客园张占岭(仓储大叔)的博客,原文链接:RabbitMQ~消息的产生和管理(15672),如需转载请自行联系原博主。