我使用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条答案
按热度按时间r8uurelv1#
我怎么能一直重试发布消息直到它到达消息代理
重试发布操作特定于您使用的编程语言。由于您没有提供代码,我只能给予一般提示-检查RabbitMQ的返回值,正确处理异常,并在发布不成功的情况下重试。