2

ユーザーに分析を表示する必要があります。ただし、これらの分析が完了するまでに時間がかかる場合があります (2 ~ 5 秒の場合もあります)。これらの結果を待つのではなく、ウェブページ上で動的に更新したいと考えています。

私はすでにセロリを限定的な方法で実装していますが、私がやりたいのは、いくつかのタスクをセロリに送信し、画面をレンダリングし、関数が完了したら、戻り値を Web ページに送信して更新することです。

タスクが作成されたら、そのステータスを監視する必要がありますか?それとも、タスクが完了したら、JSON を Web ページに直接送信できますか? いくつかのコード例が役立ちます。

ありがとうございました。

4

1 に答える 1

2

データの「プッシュ」は、djangoでは非常に困難です。ネイティブではサポートされておらず、ソリューションはせいぜいハッキーです。

より単純なオプションがあり、最も人気のあるのはajaxポーリングです。

  1. ユーザーは分析を行うためのリクエストを開始できます。

  2. djangoはプロセスをキューに入れ、ストレージでの処理としてマークします

  3. x秒ごとに、ユーザーはajax呼び出しを行い、要求のステータスを要求します。

  4. リクエストが終了すると、これを反映するようにストレージが更新され、次に行われるポーリングリクエストで適切なデータを取得できます。

HTML5は、ソケットベースの通信をネイティブでサポートしています。しかし、djangoはそれをサポートしていません。

DjangoプッシュHTTP応答をユーザーに

于 2012-06-26T00:13:56.710 に答える