0

keyup()ごとにテーブルを検索するフィールドのより良い解決策は何だと思いますか。

  1. データベーステーブルを検索し、結果を返すAJAXクエリ
  2. データベーステーブルを検索し、結果をセッションに保存し、後続のリクエストでセッションを検索するAJAXクエリ
  3. データベーステーブルを検索し、結果をJSオブジェクト/配列に格納し、後続のリクエストでオブジェクト/配列を検索するAJAXクエリ

テーブルは簡単に1000行に達する可能性がありますが、数千行を超えることはありません。これに取り組むための効果的でパフォーマンス主導の方法は何ですか?

これは良い解決策でしょうか?

http://jqueryui.com/demos/autocomplete/

4

2 に答える 2

1

私はあなたの最善の策(あなたのコメントに基づいていくつかの仮定をする)はサーバー(セッション、キャッシュではなく)に結果をキャッシュし、次にそのキャッシュされたオブジェクトの存続期間を考慮することだと思います。それをクライアント側で大量に使用していて、クライアント側がブラウザである場合は、それをクライアントに送信して後で使用することができます。1000 X 100は100,000になると考えてください。巨大ではありませんが、まだ試用版ではありません。

モバイルデバイスなどの最適ではないクライアントの場合は、そのデバイスセットに最適なものを検討することができます。

ただし、これはすべてかなり主観的なものです。

編集:セッションがユーザーごとになるのに対し、キャッシュが複数のクライアントによって使用されるように構造化できる必要があります(それらがすべて同じデータセットである場合)。

于 2012-04-26T20:32:29.420 に答える
0

少なくとも3文字になるまで、クエリの要求を遅らせます。結果の数は非常に少ないですが、Webページを最適化する場合は、サーバー、モバイル、またはデスクトップにリクエストを送信するユーザーの数を考慮する必要がありますか?オブジェクトを処理するには、プロセッサとメモリが必要です。

于 2012-04-26T19:53:23.083 に答える