我正在使用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!! */
}
答案 0 :(得分:0)
RabbitMQ团队监控the rabbitmq-users
mailing list,有时只回答StackOverflow上的问题。
如何继续重试发布消息,直到消息到达消息代理
重新尝试发布操作特定于您正在使用的编程语言。由于您没有提供代码,我可以给出一般提示 - 检查RabbitMQ的返回值,正确处理异常,并在发布不成功的情况下重新尝试。