Python で Web アプリを作成しようとしています。これは次の 2 つの部分で構成されます。
- 各ユーザーが特定のタスクを設定できる Django ベースのユーザー インターフェイス
- ワーカー プロセス (ユーザーごとに 1 つ)。ユーザーが開始すると、UI をフリーズせずにバックグラウンドでタスクを実行します。
ビューで作成するオブジェクトは永続的ではないため、ワーカー プロセスを追跡する方法がありません。このタスクにどのようにアプローチするかさえわかりません。何か案は?
Python で Web アプリを作成しようとしています。これは次の 2 つの部分で構成されます。
ビューで作成するオブジェクトは永続的ではないため、ワーカー プロセスを追跡する方法がありません。このタスクにどのようにアプローチするかさえわかりません。何か案は?
セロリで解決できる問題のようです。各ユーザーはCeleryで非同期タスクを開始し、最終的にはDjangoで再び結果を取得します。
CeleryはAsyncResult
、タスクが完了するのを待つか、タスクが完了したかどうかを確認するために使用されるインスタンスを返します。
django に適しているので、セロリを試すことができます。しかし、正直なところ、私はそれが好きではありません (バグ :)
Gearmanに切り替えます。独自のジョブ プロデューサーとコンシューマー (ワーカー) を作成するのは、一種の楽しみです。