【发布时间】:2011-09-13 10:03:04
【问题描述】:
我有一个 RabbitMQ 的特定用例,我想澄清某些事情并寻求建议。
考虑这种情况:
1- 我发布两条消息,即要执行的任务:messageA,然后是 messageB
2-我的消费者得到了messageA,执行了这个消息中包含的任务,但是在任务运行的时候,服务器崩溃了
我的问题是:当服务器重启时,messageA会重新入队,会在messageB之前重新入队吗(与crash前的顺序相同)?
据我了解,如果服务器崩溃,messageA 将会丢失,因为我的消费者在收到消息时默认已确认。
所以我的想法是分别消费和确认消息:先消费,运行任务,等任务执行成功后再确认消息。
您认为这种方法有问题吗?你会建议我做其他事情吗?
【问题讨论】:
标签: javascript node.js rabbitmq amqp