問題タブ [celery]
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 - Django 非同期処理
いくつかの数学的計算 (C で記述され、Cython モジュールを介して実行される) を実行する Django リクエストが多数ありますが、実行には不確定な時間 (1 秒程度) がかかる場合があります。また、リクエストはデータベースにアクセスする必要がなく、すべて互いに独立しており、Django からも独立しています。
現在、すべてが同期 (ワーカー型で Gunicorn を使用sync) ですが、これを非同期でノンブロッキングにしたいと考えています。要するに、私は何かをしたいと思います:
- AJAX リクエストを受け取る
- 使用可能なワーカーにタスクを割り当てます (メインの Django Web アプリケーションをブロックせずに)
- ワーカーは不明な時間でタスクを実行します
- Django は、タスクが完了するたびに、計算の結果 (文字列のリスト) を JSON として返します。
私は非同期 Django を初めて使用するので、これを行うのに最適なスタックは何かという質問があります。
この種のプロセスは、タスク キューが適しているものですか? Tornado + Celery + RabbitMQ、または他の何かを推奨する人はいますか?
前もって感謝します!
python - セロリのタスクが消える - Django/Celery
ここに私のコードがあります:
私の仕事
タスクの使用
問題1
数秒後、次のことを実行します。
これを印刷します:
(値はパターンのようには返されません)
2 回目の OS のクリーン インストールとセットアップ:
すべてが期待どおりに機能していますが、ここで何が起こったのかまだわかりません...
Django管理インターフェース内でもタスクがランダムに欠落しています...
何が起こっているか知っている人はいますか?:|
python - 接続の問題-Celery/Django
長い夜...2番目のCelery/RabbitMQセットアップを実行できません。
ステップ1
実行:わかりました!
ステップ2
エラー:[2010-12-28 03:38:24,690: ERROR/MainProcess] CarrotListener: Connection Error: Socket closed. Trying again in 28 seconds...
私は間違いなく持っています:
- rabitmqユーザーとvhostを追加しました
- Djangosetings.pyを更新しました
編集:
apt-getではなく.debからインストールする必要があると思います。
debをアンインストールしてapt-getバージョンをインストールすると、次のようになります。
私の解決策:
apt-get --purge removerabbitmq-server
apt-get installrabbitmq-server
...コメントなし...たぶん睡眠が必要です:)
これをデバッグする方法について何かアイデアはありますか?:|
python - pdbを介したdjceleryのcelerydのデバッグ
誰かがpdbを使用してcelerydワーカーをデバッグしようとしましたか?ブレークポイントが検出されると(pdbを介してcelerydを実行するか、によってpdb.set_trace())、次のエラーが発生します。
これに対する解決策はありますか?
database - Celery/RabbitMQ を永続化する方法はありますか?
サーバーがクラッシュした場合でも、自分のタスクを保持できますか?
python - Python コードが機能しないのはなぜですか?
celery.decoratorsインポートタスクから
それが私の tasks.py ファイルです。
ご覧のとおり、関数は機能します。ただし、ファイルは作成されません。なんで?
許可の問題が発生する可能性があるため、複数のファイル パスを変更しようとしました。しかし運がない。
python - Python コードに何か問題がありますか? (機能)
このコードを実行すると、タスクが継続的にキューに追加されることが期待されます。しかし、そうではありません!最初のタスク (5,2) のみがキューに追加され、処理されます。
「add.delay(1,9)」という行があるため、継続的にタスクが追加されているはずです。
注:別のタスクを実行するには、各タスクが必要です。
python - Celeryで、タスクを実行してから、そのタスクに別のタスクを実行させ、続行するにはどうすればよいですか?
今、私は簡単なタスクを実行します。そして、乱数を返します。しかし、そのタスク内で別のタスクを実行させるにはどうすればよいですか?
python - djcelery を使用して Web サイトをスクレイピングし、django モデルに入力する
セロリをジャンゴで動作させるのに問題があります。セロリを使用して Web サイトをスクレイピングし、いくつかの django モデルを 20 分ごとに更新したいと考えています。
アプリ ディレクトリに更新クラスを持つタスク ファイルを作成しました。
コマンドラインから実行すると、クラスはモデルを正しく更新します。
setting.py の私のセロリ設定は次のようになります。
しかし、実行するmanage.py celeryd -v 2と接続エラーが発生します。
私は何が欠けていますか?
アップデート:
既存のデータベースを使用しているため、かなり良さそうなdjango-kombuを見つけました。django-kombu と kombu をインストールしましたが、実行時に次のエラーが発生しますmanage.py celeryd -v 2。
python - CeleryCAM が機能しない... - Django/Celery
セロリが大活躍!:) 例えば、結果は問題なく返されます!
残念ながら、celerycam は次のことを行いません。
これは私のパネルの外観です。celeryev も同じように見えます。
注意: これらのタスクはすべて正常に完了しましたが、完了したと表示されず、名前も表示されません。

次のコマンドを使用しています。
python manage.py celeryd -l 情報 -E
python manage.py セロリカム
私のBROKERはRabbitMQです
私のデータベースはMongoDBです
Django、Celery、RabbitMQ は、Ubuntu 10 のクリーン インストールで実行されています。
アイデアはありますか?誰かがこれについて私を助けてくれたら素晴らしいでしょう :|