2012-03-21 11 views
4

私はAmazon SQLでCelery + Kombuを使用しています。 目的は、特定の日時にすでにスケジュールされているタスクを削除できるようにすることです。 私はSQSでセロリタスクを取り消す

from celery.task.control import revoke 
revoke(task_id) 

を試みたが、それは何も変更しませんでした。 SQSトランスポートに取り消しが実装されていませんか?その背後にはいくつかの設計上の決定があるのでしょうか、それとも、ある種の "DeleteMessage"コードラインによって実装されるべき欠けている機能ですか?

+0

私は同じ問題を抱えています。あなたは解決策を見つけましたか? –

+0

私はDjango-Celeryに戻りました。 RabbitMQを使用している場合を除き、タスクを取り消すためのカスタムソリューションを用意することをお勧めします。例えば。タスクを実行する代わりに、潜在的なタスクのテーブルをスキャンし、時間が来たらそれらを実行するスケジューラータスクの2つのコンポーネントのシステムを構築します。取り消す必要はなく、必要なときにタスクを実行しないように決めることができます。 – AlexA

答えて

1

RabbitMQを使用していない限り、タスクを取り消すためのカスタムソリューションを用意することをお勧めします。例えば。タスクを実行する代わりに、潜在的なタスクのテーブルをスキャンし、時間が来たらそれらを実行するスケジューラータスクの2つのコンポーネントのシステムを構築します。取り消す必要はなく、必要なときにタスクを実行しないように決めることができます。

関連する問題