我正在使用芹菜来并行执行调用第三方API的Python函数。
此API要求每次调用之间至少等待3秒。
是否有方法指定消息代理(RabbitMQ或Redis)来尊重每个工作调用之间的延迟?
发布于 2022-01-03 15:53:17
在芹菜里,你可以用倒计时的方法。请参阅https://docs.celeryproject.org/en/stable/userguide/calling.html#eta-and-countdown
RabbitMQ有几种支持延迟消息的不同选项,包括延迟消息交换插件和死字。不幸的是,芹菜不支持这两种方法。相反,它所做的是延迟消息的执行,直到到达倒计时时间。消息本身立即发送给员工。
发布于 2022-01-03 22:35:58
会检查https://docs.celeryproject.org/en/stable/userguide/tasks.html#retrying
指定重试延迟为3秒,您可以将重试次数限制为X,作为在文档中看到的任务定义的一部分。
https://stackoverflow.com/questions/70567685
复制相似问题