3

応答性を改善するために、ページ分割されたデータをプリロードすることをお勧めします。

理由は次のとおりです。ユーザーがページ分割されたデータを読むとき、ページを順番に移動する可能性が最も高くなります。したがって、ユーザーが現在のページを読むのにかかる時間を費やして、次のページをメモリにロードするのは理にかなっています (AJAX 呼び出し、結果の HTML を保存し、「次のページ」リンクでコンテンツのinnerHTML代わりにコンテンツを置き換えるだけです)。新しいページを読み込んでいます)。同様に、以前にロードされたページをメモリに保持できるため、ユーザーが戻った場合に、サーバーへの別のラウンドトリップを行わなくてもページがすぐに再表示されます。

私の主な懸念は、これがブラウザの RAM 使用に与える影響です。つまり、突然、1 つではなく複数のページを保持するようになりました。つまり、レイアウトの 1 ページよりも 100 倍も大きい Web ページにアクセスしたことがありますが、それらは問題なく機能しました。

私のもう1つの懸念は、データが変更される可能性があることです(現在、ユーザーが投稿を編集したり、(最後のページの場合)新しい投稿が作成されるフォーラムについて考えています。メモリ内の最後のページですが、キャッシュシステム全体の目的を損なうことなく、変更された投稿をチェックする方法はありますか?私が思いつく最善の方法は、リクエストを行うことができる静的リソースキャッシングに似ていますが、その場合、サーバーは Not Modified で応答できます. しかし、ページを編集するよりもページを表示する方がはるかに多い可能性が高いため、ほとんどすべての要求が Not Modified になります. どうすればよいかわかりませんこれをすべて行うか、心配する価値がないかどうか。

4

2 に答える 2

1

多くのサイトでは、非常に多くの画像を一度にロードできる「無限」スクロールを使用しています。ほとんどのブラウザは、実際に表示されているものに基づいてメモリを管理していると思います。状況によっては、ページネーションよりも「無限」スクロールの方がユーザーフレンドリーになることがあります。

スレッドに「最終更新日」タグを付けることができます。サイトからの通常の更新を確認すると、最終更新日と html に保存されている日付を比較できます。変更が最近のものである場合は、投稿の最新バージョンを取得して更新します。正直なところ、おそらく心配する必要はありません。人々はブラウザをリロードして変更を確認することに慣れています。

于 2012-08-14T23:20:35.567 に答える
1

キャッシングはパフォーマンスを向上させます。RAM が問題になる場合は、使用されていない古いページを解放 (削除) します。

最も重要なことは、アクセス分析を維持して、ユーザーがサイトとどのようにやり取りしているかを確認する必要があることです。他の誰かにとって良いことは、あなたにとって良いことではないかもしれません。ユーザー エクスペリエンスがすべてです。テストを行ってユーザーにとって最適なエクスペリエンスを判断する必要があります。

于 2012-08-14T23:23:07.143 に答える