【问题标题】:Make a Rabbit message persistent in PHP在 PHP 中使 Rabbit 消息持久化
【发布时间】:2014-02-03 18:17:02
【问题描述】:

我正在使用http://www.php.net/manual/en/book.amqp.php 在我的服务器上使用 Rabbit。 我无法使我的消息持久化。我将交换和队列设置为AMQP_DURABLE,但在服务器重新启动后队列为空。消息似乎没有保存到磁盘。

我将通过以下方式发布我的消息:http://www.php.net/manual/en/amqpexchange.publish.php

【问题讨论】:

    标签: php rabbitmq


    【解决方案1】:

    您需要将消息设置为持久。您现在所做的只是将交换和队列设置为持久,这正是正在发生的事情。

    因此,要将消息保存到磁盘,您需要将 delivery_mode 设置为 2。也就是说,durable

    看看这个thread 看看它的实际效果(代码无耻地从@Grzegorz Motyl 的回答中复制):

    $exchange->publish($text, $routingKey, null, array('delivery_mode' => 2));
    

    【讨论】:

      猜你喜欢
      • 2017-09-14
      • 2015-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-26
      • 1970-01-01
      • 2011-06-30
      • 2012-02-08
      相关资源
      最近更新 更多