每次执行完后 TTL 变成了-1 ,但数据会一直残留着。该怎么解决?
每次执行完后 TTL 变成了-1 ,但数据会一直残留着。该怎么解决?
|
1
用 AsyncResult 对象的 forget()方法
result = some_task.delay() result.forget() |
|
2
残留的是 result 还是什么?
|
|
3
设置执行结果过期时间 “ CELERY_TASK_RESULT_EXPIRES ”
|
|
4
@julyclyde 残留的是 result ,但 result.forget()并不起作用。而且我将 CELERY_TASK_RESULT_EXPIRES 设置成了 30 ,依然没有效果。
|
|
5
|
|
6
如果不设置 CELERY_TASK_RESULT_EXPIRES ,默认超时应该是 24 小时,奇怪的是 24 小时后 result 的 TTL 变成了-1 ,却没有被清除。
|
|
fanzhengAug 25, 2016
9
我现在是把 result 的 broker 删除了的,不保存 result ,或者用 sqlite 算了。
|