問題タブ [djcelery]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pythonでジョブスケジューリングを実装するには?
Django でタスク スケジューリング システムを実装しています。ユーザーは、電子メールの送信などのタスクを選択し、タスク実行の非常に具体的な日時を設定します。
Celery を使用すると、次のようなタスクを設定できることがわかりました
しかし、特定の時間にトリガーするにはどうすればよいですか? セロリの PeriodicTasks では、実行時間と頻度を事前に指定する必要があります。その場で実行日時を追加するにはどうすればよいですか?
add.schedule(date="SOME_DATA") などのCeleryのメソッドまたはこのユースケースを解決できるその他の方法はありますか。
python - manage.py celeryd -l 情報
私が走るとき
次のエラーが表示されます
ワーカーが pickle でシリアル化されたメッセージを受け入れるときにスーパーユーザー権限でワーカーを実行することは、非常に悪い考えです! 本当に続行したい場合は、C_FORCE_ROOT 環境変数を設定する必要があります (ただし、実行する前にこれについて考えてください)。
ユーザー情報: uid=0 euid=0 gid=0 egid=0
この問題で立ち往生していますこれを解決できる人はいますか?
django - Celery/Django トランザクション
Celery ユーザー ガイドでは、タスク プロセスを呼び出す前に、Django トランザクションを手動でコミットすることをお勧めします。
http://celery.readthedocs.org/en/latest/userguide/tasks.html#database-transactions
システムをできるだけ信頼できるものにしたい。トランザクションのコミットとタスクの呼び出しの間のクラッシュから回復するためのベスト プラクティスは何ですか (つまり、トランザクションがコミットされたときに常にタスクが呼び出されることを確認してください)。
ところで、現在、実装したデータベースベースのジョブキューを使用しているため、そのような問題はありません。トランザクション内でジョブを送信できます。セロリに切り替えるべきかどうか、私は本当に確信が持てません。
python - djcelery を使用する場合の Revoke、Terminate、Kill の違いは何ですか?
私は djcelery と django の管理サイトを使用しています。開始された djcelery タスクを停止したい場合、revoke、terminate、または kill を使用する必要がありますか?違いは何ですか?
python - current_app.send_task を使用すると、Celery タスクのルーティングが機能しない
current_app.send_task を使用している場合、Celery キューのルーティングに問題があります
2 つのワーカーがあります (各キューに 1 つずつ)
celeryconfig.py ファイルで定義された 2 つのキューがあります。
タスクの定義では、decorator を使用してキューを明示します。
このタスクが以下を使用して実行される場合、このタスクは実際に低キューで実行されます。
ただし、次を使用して実行する場合はそうではありません: (デフォルトのキューで実行されます: "priority")
この後の方法でタスクが「低」キューにルーティングされないのはなぜでしょうか。
ps: 私は redis を使用しています。
celery - セロリのワークフローで、関連のない謎の task_id が返されます。
次のようなかなり複雑なワークフロー(動的に構築される)があります。
)
どのセロリがこれに変わりますか:
コードの最後にあるタスクが「タスク」ヘッダーにプッシュされる方法に注意してください。私が読んだことから、これらのタスクはメインタスクヘッダーに保存され、コードヘッダーの実行が完了するまでキューに入れられません。
ワークフロー全体の task_id を表示しようとすると (ワークフロー内の task_id の 1 つになると予想されます)。
取得したこのタスク ID は、celery_taskmeta または celery_tasksetmeta に保存されません。ワークフロー内で実行されるタスクではありません (以下のワーカー ログを参照)。この task_id が何を表しているのか、実行中のタスクのいずれかにリンクできる場合はどうすればよいですか?
結果をたどり、ワークフロー内の各タスクの状態を表示できるようにしたいと考えています。ただし、返されたこのタスクIDは、どのタスクにも関連していないようです。以下はワーカー ログです。上に出力されたタスク ID がどこにも見つからないことがわかります。何か案は?ありがとう。
python - Flower UI にセロリ ワーカーとタスクが表示されない
を使用してdjangoアプリに花をインストールしpip install flower
ました。コマンドを使用して開始し./manage.py celery flower --port=5555
ます。その後、次の出力が得られます。
ただし、UI にタスクとワーカーが表示されません。ポインタをください。