##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
) {
-
$queue 是队列的名字.而存在默认值的意思是.你可以创建一个不重复名称的一个临时队列.(交换机没法创建临时的)
如获得通道后执行如下代码.
var_dump($channel->queue_declare());
结果就是想下边这样.看起来有点像SESSIONID
-
$passive 只查询不创建.如果为true,如果存在这个队列,则会返回队列的信息.如果不存在这个队列..则会抛异常(与交换机不同的是,如果交换机判断存在,则返回NULL,否则异常)
-
$durable 重启后是否会重建这个队列
-
$exclusive 排他队列,如果你希望创建一个队列,并且只有你当前这个程序(或进程)进行消费处理.不希望别的客户端读取到这个队列.用这个方法甚好.而同时如果当进程断开连接.这个队列也会被销毁.不管是否设置了持久化或者自动删除.
-
$auto_delete 自动删除
-
$nowait 不等待处理结果..
-
$arguments 额外的参数.
-
$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解析