1

私の drupal サイトには、管理者がユーザーを市場に割り当てることができる管理者ページがあります。jquery アコーディオン ウィジェットを使用して、クリックしたときに各ユーザーのすべての市場を表示します。ページは何年にもわたって成長し、72 の市場と 157 のユーザーがいます。したがって、html が生成されると、ページがクライアントに送信される前に、少なくとも 72 x 157 = 11,304 個の dom 要素が html に書き込まれます。143.75m に達して許容メモリ制限を破ったため、ユーザーを追加するときはそれを上げなければなりません。これが悪い設計であることは理解していますが、サーバーが実行しなければならない作業に関して、非常に大きな html ページの複雑さを理解する方法に興味があります。ページ上で生成される DOM 要素の数と、サーバーが必要とする許容メモリ量との間に一般的な数学的相関関係はありますか?

4

1 に答える 1

1

サーバー側のメモリは、生成される DOM 要素の数とはほとんど関係がありません。おそらくそれらを文字列としてエコーするだけだからです。明らかに、DOM 要素の数は HTML のサイズ (バイト単位) と相関関係があり、これが使用されるメモリ量に影響を与える可能性があります。(この部分は非常に簡単に測定できます。結果の HTML をファイルとして保存し、OS にディスク上でどのくらいのスペースが必要かを確認してください。)

ただし、メモリ使用量の最大の部分は、おそらくその HTML を生成するために使用される実際のデータ (配列、オブジェクト、中間変数) です。たとえば、データベースからデータを取得する場合、処理する行が多いほど、結果セットが消費するメモリも多くなります。異なる表現間で変換されるため、メモリ内に複数回存在する可能性があります。

PHP 5.4 にはメモリ使用量の大幅な改善が含まれていることに注意してください。そのため、以前のバージョンを実行している場合は、アップグレードの可能性を検討する価値があるかもしれません。

于 2013-05-06T02:33:46.490 に答える