私はデジタル海洋のubuntu 14.04サーバーにdjangoアプリケーションをデプロイしようとしています。Django Celery ubuntu 14.04
セロリは非同期タスク用であることを理解しています。ユーザーは何かを行い、高価なタスクが実行されるのを待つのではなく、サイトの別のセクションに行くことができます。 Celeryは、redisや他のメッセージブローカーを使用してこれを行います。キューを作成し、ワーカーはキュー上のタスクを実行します。私はこれを使用して、ユーザーエクスペリエンスに対する侵害の少ない呼び出しを行うようにしています。
私はこれをプロダクションに展開するので、セロリのすべてのものがどこにあるのか非常に混乱しています。私は、私が管理ページからセロリで必要なものすべてを行うことができると言う投稿を見てきました。そして、他の投稿には、セロリを始める監督ファイルがあります。スーパーバイザファイルを作成しようとすると、 '/ home/django/django_project/venv/bin/celery'にエラーコマンドが表示されますが実行できません。
管理ページからセロリを管理することについては、セロリの作業者とキューがどのように作成され、管理されているかわかりません。私はそこを通って仕事を予定したいが、一般的には非常に混乱している。
私はこれをクリアする人に感謝します。 ありがとうございます
更新:セロリビートは私が一緒に行おうとしたものです。私が実行した場合:
celery -A <proj> beat -l info -S django
これが起こる:超クールだ
[2017-07-13 22:31:51,051: INFO/MainProcess] beat: Starting...
[2017-07-13 22:31:51,052: INFO/MainProcess] Writing entries...
[2017-07-13 22:31:51,107: INFO/MainProcess] Scheduler: Sending due task does it work!? (does_celery_work)
[2017-07-13 22:31:51,134: INFO/MainProcess] Writing entries...
[2017-07-13 22:32:21,094: INFO/MainProcess] Scheduler: Sending due task does it work!? (does_celery_work)
[2017-07-13 22:32:51,095: INFO/MainProcess] Scheduler: Sending due task does it work!? (does_celery_work)
を!しかし、タスクは実行されていません。セロリのスケジュールされたタスクが働いていることを証明するために30秒ごとにテキストを電話するtwilioタスクです。 pingを実行するとredisサーバが正常に動作しています。また、正しいポートにあり、そのポートにpingされていることを二重にチェックしました。 セロリのビートを自動的に働かせて、それが機能することを確認することになるでしょうか?
ありがとう!花はとても助かりました。しかし、いくつかのタスクが失敗する場合があります。 [W:170713 22:59:25 control:44] 'stats'検査メソッドが失敗しました [W:170713 22:59:25 control:44] 'active_queues'検査メソッドが失敗しました [W 170713 22:59:25 control:44] 'registered'検査メソッドが失敗しました [W 170713 22:59:25 control:44] 'scheduled'検査メソッドが失敗しました [W 170713 22:59:25 control:44] 'active '検査メソッドが失敗しました [W 170713 22:59:25 control:44]'予約済み '検査メソッドが失敗しました – Davep
申し訳ありませんが、コメントの書式設定方法がわかりません。これはredis localhostに正常に接続し、それ以降のすべてが失敗し、ポート5555にタスクは表示されませんが、花のページが読み込まれます! – Davep
私の問題は、花と一緒に上記のようにセロリのビートを始める方法がわからないことだと思います。私はスーパーバイザーファイルを使用する必要があると思うが、決してそれを動作させることはできない。 – Davep