Mic*_*ick 5 message-queue amqp rabbitmq symfony
注意:在Symfony2 中通过RabbitMQBundle使用RabbitMq。
我的制作人发送这样的消息:
$message = array(
'class' => get_class($receiver),
'id' => $receiver->getId(),
'stepNumber' => 1,
'errorCount' => 0
);
Run Code Online (Sandbox Code Playgroud)
消费者$receiver从数据库中检索并给他发送一封电子邮件。
public function execute(AMQPMessage $msg)
{
//Step1 - retrieve user from db
//Step2 - send email
//Step3 - update stuff in database
}
Run Code Online (Sandbox Code Playgroud)
为了跟踪错误,我想在每一步处理异常。如果在第3步抛出异常,我想修改stepNumber为3,将errorCountin增加1 $msg,最后$msg通过返回重新排队false。
这具有以下优点:
errorCount > 5,我只是丢弃消息.. return false。这会很棒,但是:
$msg在RabbitMQ重新排队之前修改它?| 归档时间: |
|
| 查看次数: |
5123 次 |
| 最近记录: |