Python 使用芹菜Http回调任务重试
我正在看http回调任务-在芹菜中。当远程端点可用时,它们可以很好地工作,但当它不可用时,我希望它重试(根据重试策略),或者即使远程端点返回失败。目前,这似乎是一个错误,任务被忽略Python 使用芹菜Http回调任务重试,python,django,celery,Python,Django,Celery,我正在看http回调任务-在芹菜中。当远程端点可用时,它们可以很好地工作,但当它不可用时,我希望它重试(根据重试策略),或者即使远程端点返回失败。目前,这似乎是一个错误,任务被忽略 有什么想法吗 您应该能够定义您的任务,如: class RemoteCall(Task): default_retry_delay = 30 * 60 # retry in 30 minutes def Run(self, arg, **kwargs): try:
有什么想法吗 您应该能够定义您的任务,如:
class RemoteCall(Task):
default_retry_delay = 30 * 60 # retry in 30 minutes
def Run(self, arg, **kwargs):
try:
res = URL("http://example.com/").get_async(arg)
except (InvalidResponseError, RemoteExecuteError), exc:
self.retry([arg], exc=exc, *kwargs)
这将继续尝试,最多重试一次,每30分钟一次 我可能弄错了-但是get_async在端点不存在时没有返回错误-所以它不会触发重试?(我可能弄错了,我仍然在想事情的发展方向。)。所以要使用这个-I(在“客户机”上)调用RemoteCall().delay()?