企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] # 命令 ## 管理类命令 ~~~ # 启动 rabbitmq-server start & # 启动应用 rabbitmqctl start_app # 停止应用 rabbitmqctl stop_app # 节点状态 rabbitmqctl status # 管理插件,会帮我们启动6个插件 rabbitmq-plugins enable rabbitmq_management # 访问地址 http://ip:15672 ~~~ ~~~ # 插件列表 rabbitmq-plugins list ~~~ ## 用户类操作 ~~~ # 添加用户 rabbitmqctl add_user username password # 列出所有用户 rabbitmqctl list_users # 删除用户 rabbitmqctl delete_user username # 清除用户权限 rabbitmqctl clear_permissions -p vhostpath username # 列出用户权限 rabbitmqctl list_user_permissions username # 修改密码 rabbitmqctl change_password username newpassword # 设置用户权限 ".*" ".*" ".*" rabbitmqctl set_permissions -p vhostpath username ~~~ ## 虚拟主机命令 ~~~ # 创建虚拟主机 rabbitmqctl add_vhost vhostpath # 列出所有虚拟主机 rabbitmqctl list_vhost # 列出虚拟主机上所有权限 rabbitmqctl list_permissions -p vhostpath # 删除虚拟主机 rabbitmqctl delete_vhost vhostpath ~~~ ## 队列命令 ~~~ # 查看所有队列信息 rabbitmqctl list_queues # 清除队列里的消息 rabbitmqctl -p vhostpath purge_queue blue # 指定某个vhost下的队列查看 rabbitmqctl list_queues -p / ~~~ ## 高级操作 ~~~ # 移除所有数据,要在rabbitmqctl stop_app之后使用 rabbitmqctl reset # 组成集群命令(--ram表示数据落在内存上) rabbitmqctl join_cluster <clusternode> [--ram] # 查看集群状态 rabbitmqctl cluster_status # 修改集群节点的存储形式 rabbitmqctl change_cluster_node_type disc | ram # 忘记节点(摘除节点) rabbitmqctl forget_cluster_node [--offline] # 修改节点名称 rabbitmqctl rename_cluster_node oldnode1 newnode1 [oldnode2] [newnode2...] ~~~ # 管控台 ## 端口 15672是管控页面端口号 5672是java端通信的端口号 25672是集群通信的端口号 ## 管控台 账号密码都是guest ## 页面详解 ![](https://box.kancloud.cn/bc338d06fb30f4aa9d1e187c4beafd45_618x184.png) ![](https://box.kancloud.cn/4744984c97eadc546caf5c7d5a237971_1406x158.png) 应用服务和RabbitMQ操作都需要建立连接connection使用channel进行实际操作 生产者直接把消息投递到Exchange交换机 ## Exchanges页面 ![](https://box.kancloud.cn/7cba29f569f3e2d8ba83255f37e67a7e_1154x548.png) **创建Exchange** ![](https://box.kancloud.cn/1316229a682a96a81a23f67db817e68b_1288x636.png) * Name:名字,同一个Virtual host里面的Name不能重复。 * Durability: 是否持久化,Durable:持久化。Transient:不持久化。 * Auto delete:当最后一个绑定(队列或者exchange)被unbind之后,该exchange自动被删除。 * Internal: 是否是内部专用exchange,是的话,就意味着我们不能往该exchange里面发消息。 * Arguments: 参数,是AMQP协议留给AMQP实现做扩展使用的。 alternate\_exchange配置的时候,exchange根据路由路由不到对应的队列的时候,这时候消息被路由到指定的alternate\_exchange的value值配置的exchange上。(下面的博客会有说明这参数的具体使用) ~~~ rabbitmqctl list_exchanges ~~~ **查看交换机类型** ![](https://img.kancloud.cn/e5/db/e5dbaf40c21d6ffd6404dac642baed8f_578x545.png) **发送消息** ![](https://img.kancloud.cn/11/8a/118ad37d24f1733c5f752edd2d64d703_466x515.png) **删除交换机** unbing之后该exchange删除 ![](https://img.kancloud.cn/81/f3/81f365017c7250da56b28ed2e6b634b4_298x410.png) ## Overview页面 **Totals** ![](https://box.kancloud.cn/4220ce080948cac158b680b0080a33cf_863x298.png) **Global counts** ![](https://box.kancloud.cn/891d869abb4ae6f90f5e0b65a3a7390c_1658x172.png) **Node** ![](https://box.kancloud.cn/afe3046b2692784083381495f1746543_1832x326.png) **paths** ![](https://box.kancloud.cn/c59cbc4309d1bf1eb5cd9a4d20157bae_1406x292.png) **ports** ![](https://box.kancloud.cn/f8ea886840d50e629109f8968adf7c96_918x444.png) **Import/export definitions** ![](https://box.kancloud.cn/8abffe8049d679eb213f0bc5bf776562_1492x416.png) 是个json文件 当我们集群要迁移的时候,我们可以把配置文件导出,然后在新的集群导入这个配置文件就可以 **update** 页面更新时间 ![](https://box.kancloud.cn/4ef611417edbda945b7b29be507880d0_674x214.png) ## Queues页面 **绑定的** ![](https://img.kancloud.cn/5c/15/5c155ec1ba5e89881cee275eb7590e30_596x749.png) **查看消息** ![](https://img.kancloud.cn/5b/dc/5bdc39279a28b07a8899dc92727d1381_755x740.png) ## Admin页面 ![](https://img.kancloud.cn/f5/75/f5751a9469bcecf92814d06425df7f7e_1200x405.png)