Rabbitmq消息发布重试

时间:2018-04-19 09:50:01

标签: php rabbitmq

我正在使用RabbitMQ。如果由于任何原因我的发布者无法发送消息,我想再次尝试重新发送消息。我如何继续重试发布消息,直到它到达消息代理。

有什么方法可以解决这个问题吗?这是我的代码。提前谢谢。

try {
       channel->queue_declare($queue, false, true, false, false);
       $queueMsg = new AMQPMessage($Body, array('delivery_mode' => AMQPMessage::DELIVERY_MODE_PERSISTENT););
       $channel->basic_publish($queueMsg, '', $queue);
    } catch (Exception $e) {
        log ("Failed to send message");
        /*HERE I WANT TO RETRY SENDING MESSAGE BY CALLING basic_publish() method again!! */

    }

1 个答案:

答案 0 :(得分:0)

RabbitMQ团队监控the rabbitmq-users mailing list,有时只回答StackOverflow上的问题。

  

如何继续重试发布消息,直到消息到达消息代理

重新尝试发布操作特定于您正在使用的编程语言。由于您没有提供代码,我可以给出一般提示 - 检查RabbitMQ的返回值,正确处理异常,并在发布不成功的情况下重新尝试。