SPREAD for ASP.NET 10.0J パフォーマンスガイドライン > SPREADの仕組み > SPREADの構成 |
ブラウザ上でSPREADコントロールはどのように描画されているのでしょうか。aspxファイル上に配置されたSPREADコントロールは実行時にdivタグとして出力され、さらに各コントロールの部分ごとにdivタグが入れ子構造で定義されています。以下に、SPREADを構成するタグの概略を示します。
シートコーナー、列ヘッダ、行ヘッダ、セルおよびコマンドバーがそれぞれdivタグで定義され、さらに内部でtableタグが使用されています。内部で使用されるtableタグは、HTML上で一覧表の実現する一般的な方法となります。「4.セル」で示した箇所が実際のシート領域となり、各セルはそれぞれのtdタグの中に構成されます。ここではタグ構造の概略を示すため最小限の行列で出力を行いましたが、1つのセルが1つのtdタグとして出力されるため、行列数が増えるとtd要素の数が増えることになります。例えば、100行100列のシートを作成した場合、出力されるtdタグの数は10000にもなります。つまり、行列の数が増えるとtd要素の数が増え、HTMLのダウンロード時間および画面の描画時間に影響します。
以上のように、最終的にHTMLソースを生成しクライアントに応答するため、データ量が多くなるとページサイズが増大します。応答データの送受信に費やす時間、Webページの描画に費やす時間が増えることが、結果的にアプリケーションの性能に影響を与えてしまうのです。
![]() |
メモリの管理について ブラウザからのリクエストがあるとSPREADは画面出力に必要となるメモリを確保しますが、出力終了後に確保されたメモリは解放されます。SPREADがメモリを保持し続けることはありません。なお、データをセッションに保持している場合、ブラウザへの応答が完了した後もセッションのデータはサーバー上に保存されます。この機能は製品固有のものではありませんので、詳細についてはMSDNなどをご確認ください。 |