0

タスクを含むリストには、クライアント側のリソースを活用する必要があります。

クライアントは次のことを行う必要があります。

  • リストの更新を通知する
  • リストの並べ替え/フィルター処理が可能 (クライアントが認識していない/キャッシュにあるタスクでサーバーからの更新を要求する)

この問題は、初期ロードまたは大規模なリストの更新時に発生します (「自分に割り当てられたタスク」から「x に関するタスク」に変更)

最も速いのは、個々の (10 以上の) 要求ではなく、すべてのタスクをリストに戻すことです。

しかし、個別にダウンロードされていないため、リスト内のタスクの更新をリクエストするときに E タグは役に立ちません。

個々の URL に対してリスト内のアイテムをブラウザにキャッシュさせる方法はありますか?

または、ナビゲーションを離れても生き残るJavaScriptキャッシュを作成する方法はありますか?

  • 別の場所に移動してタスクの URL に移動すると、js オブジェクトは存続しますか? いいえと思います。
  • 離れてから戻ってきた場合、JavaScript オブジェクトは生き残りますか? はいと思います。
    • もしそうなら、履歴を調べて既存のタスクリストに戻る「タスクリストの読み込み」ページを持つことは可能ですか? いいえ-セキュリティ。

最初の読み込みヒットを取得し、タスクを個別に取得するだけで、後のリクエストが高速になる(そしてサーバーの負荷が軽減される)と考えています。

4

2 に答える 2

1

HTML5 が実装されるのはまだ先ですが、ローカル ストレージのニーズに合わせてGoogle Gearsを使用できるかもしれません。

また、私たちが話している同時クライアントとタスクの数、タスクの大きさ、およびそのようなリクエストがデータベースに与える可能性のある負荷についてはわかりませんが、何もせずにスムーズに実行できるはずだと思いますキャッシング、10以上のリクエストはそれほど多くないようです。トラフィックがボトルネックでない場合は、サーバーにキャッシュを配置し、クライアントを「ダム」のままにします。

于 2008-12-31T01:06:47.260 に答える
1

HTML5 には、タブ/ウィンドウ内の特定のセッションに対してコンテンツを保存できるWindow.sessionStorage属性があります (同じセッションに対して実行されている場合でも、他のウィンドウには独自のストレージがあります)。

localStorage もあり、データベース ストレージ オプションも仕様で利用できます。

于 2008-11-20T20:11:04.650 に答える