1

私は現在小さなtodoサイトを作成していますが、ajaxとパフォーマンスに関連する複数の質問があります...それで私の質問は次のとおりです。

  1. リクエストの数を減らすために、1つのリクエストからすべてのデータを取得したいので、たとえば次の属性を渡します。

    1.1。1つのタスクを取得するには:

    entity = task&id = 2&type = single&extra = subtasks %% contexts

    1.2。1つのリストでタスクとイベントのリストを取得するには:

    entity = task %% event&user_id = 2%type = multiple%order = date&limit = 10

    リクエストの数が減り、パフォーマンスがいくらか向上すると思いますか?

  2. すべてのリクエストが1つのファイルに送られる場合、それは.phpファイルがかなり大きい可能性があることを意味します。それは悪いことですか?またはそれは本当に重要ではありませんか?

  3. リストのために。リストの順序を変更して、何らかの方法でフィルタリングできるようになります。すべてのタスクとイベントをにロードする方が良いと思いますか
4

1 に答える 1

1

物事を速く保つために2つの懸念があります:

  1. HTTPリクエストを減らす– 2つの別々のデータが必要な場合は、それらを1つのファイルで送信します。
  2. 各AJAXリクエストで配信されるコンテンツを小さくしてください–gzipとキャッシングはここで驚異的に機能します。

だから、はい、物事を一緒にバンドルします。大きなPHPファイルは何の違いもありません。DBクエリは、通常トラフィックされるWebページの唯一の本当のボトルネックです。

フィルタリングと並べ替えの場合、AJAX応答にJSONを使用し、少数のアイテム(おそらく最大1000アイテム)について話している場合は、クライアント側でそれに基づいて並べ替え/フィルター処理することをお勧めします。数十万のアイテムがある場合は、サーバーからサブセットを返す方が適切です。

于 2011-10-09T19:32:57.697 に答える