我需要确保添加到队列中的同一作业在一定时间内不会重复。
是否值得在我唯一的D/M/Y-HH:M
字符串中包含部分时间戳(即jobId
),因此仅在不同Minute时才进行处理?
如果在12:01
中添加了一项工作,在12:09
中添加了另一项工作,它还是会重复的吗?或者Bull是否有更好的方法呢?
最佳答案
Bull旨在通过忽略与现有作业ID一起添加的作业来支持幂等性。注意不要启用诸如removeOnCompleted
之类的选项,因为该作业将在完成后被删除,并且在下次添加作业时将不被考虑。
在您的情况下,要确保在给定的时间段内不添加任何新作业,只需确保该时间戳记中的所有作业ID都相同,例如您在注释中写的去掉了后4位您的UNIX时间戳。