安装延迟队列插件
rabbitmq-plugins enable rabbitmq_delayed_message_exchange
rabbitmq-plugins list
安装完成,在管理界面可以看到新的exchange类型
延迟exchange指定type
php程序中使用延迟队列
- 在程序中定义延迟队列,我们上面使用管理界面定义,可以不用在程序里定义
- 延迟队列publish, 这里的$delayTS为秒,延迟队列支持毫秒精度的延迟
$exchange->publish(json_encode($message), null, AMQP_NOPARAM, ['headers' => ['x-delay'=> 1000 * $delayTS]]);