rabbitMQ消息队列 – Queue解析

WebServer 林涛 211℃ 0评论

##Queue
我跟根据上上一节.介绍了.如果要创建一个交换机.则执行通道对象的exchange_declare创建
代码如
$channel->queue_declare('TestQueue', false, true, false, false);
那么也对这个方法做一个说明

首先看类库代码

    public function queue_declare(
        $queue = '',
        $passive = false,
        $durable = false,
        $exclusive = false,
        $auto_delete = true,
        $nowait = false,
        $arguments = null,
        $ticket = null
    ) {
  1. $queue 是队列的名字.而存在默认值的意思是.你可以创建一个不重复名称的一个临时队列.(交换机没法创建临时的)
    如获得通道后执行如下代码.
var_dump($channel->queue_declare());

结果就是想下边这样.看起来有点像SESSIONID

  1. $passive 只查询不创建.如果为true,如果存在这个队列,则会返回队列的信息.如果不存在这个队列..则会抛异常(与交换机不同的是,如果交换机判断存在,则返回NULL,否则异常)

  2. $durable 重启后是否会重建这个队列

  3. $exclusive 排他队列,如果你希望创建一个队列,并且只有你当前这个程序(或进程)进行消费处理.不希望别的客户端读取到这个队列.用这个方法甚好.而同时如果当进程断开连接.这个队列也会被销毁.不管是否设置了持久化或者自动删除.

  4. $auto_delete 自动删除

  5. $nowait 不等待处理结果..

  6. $arguments 额外的参数.

  7. $ticket 不知道干什么的鬼属性

顺序 参数名 默认值 作用
1 $queue 队列名
2 $passsive false 只判断不创建
3 $durable false 重启重建
4 $exclusive false 排他队列
5 $auto_delete true 自动销毁
6 $nowait false 执行后不需要等结果
7 $arguments null 额外参数
8 $ticket null  

如需转载请注明: 转载自26点的博客

本文链接地址: rabbitMQ消息队列 – Queue解析

转载请注明:26点的博客 » rabbitMQ消息队列 – Queue解析

喜欢 (1)
发表我的评论
取消评论

表情