我目前使用beanstalkd和node.js做服务。我希望当任务失败时,重试n次再放弃任务。如果工作成功了,我想做同样的工作10次。那么,最佳实践是什么呢?在mongodb中存储带有jobId的错误和成功计数,或者在body中删除并放置一个带有错误和成功计数的新作业。
我不知道我是否清楚?告诉我,谢谢
有一个stats-job <id>rn
也应该通过API库可用,它返回特定作业被保留、释放、埋藏等的次数。
这允许通过检查以前的保留/发布来对失败的作业进行多次重试。
要多次运行相同的作业,我会亲自创建一个额外的作业,然后将成功计数增加(到另一个新作业),或者创建所有九个新作业,在它们开始之前可选择延迟。
您有两种方法可以做到这一点:
- 您可以释放作业,并从统计中获得储备的数量
- 您可以放置带有重试计数的新作业,并跟踪数据有效负载中的历史记录
你应该做后一个,你不需要MongoDB作为第二个依赖。