zoukankan      html  css  js  c++  java
  • rabbitmq批量删除队列

    有些时候,我们需要批量的删除rabbitmq中的队列,尤其是对于那些客户端配置了队列不存在时自动创建,但断开时不自动删除的应用来说。

    rabbitmqctl并没有包含直接管理队列的功能,其提供的vhost粒度有时候过大以至于无法满足要求。rabbitmqadmin默认是没有随安装自带的。

    在启用了rabbitmq management plugin之后,可以通过http://IP:15672/cli/下载rabbitmqadmin shell文件,linux/windows都可用curl,如下:

    curl http://IP:15672/cli/rabbitmqadmin -o $RABBITMQ_HOME/sbin/rabbitmqadmin

    chmod a+x *

    此时就可以通过rabbitmqadmin删除队列,如下删除队列名含trdL字符串的队列:

    rabbitmqadmin list queues name | awk '{print $2}' | grep "trdL" | xargs -I qn rabbitmqadmin delete queue name=qn

    注意:rabbitmqadmin使用python作为脚本语言,所以需要确保主机环境安装了python 2.6以上。具体见http://www.rabbitmq.com/management-cli.html。

    还有一种方式是通过policy进行设置队列1秒钟后过期,这也是可以的。

  • 相关阅读:
    UML常识
    我的一些冒出来的想法
    那些我接触过的软件
    对PL/SQL的认识
    JavaScrip笔记
    万丈高楼平地起
    HTML DOM和JavaScrip的关系
    拾起荒废的英语
    Tomcat文件映射路径
    Access-Control-Allow-Origin
  • 原文地址:https://www.cnblogs.com/zhjh256/p/6117362.html
Copyright © 2011-2022 走看看