1

In my project, there is a page which has about 10-15 controls and, 3 tree views. It takes a lot of time to load as there is lot of logical checking required. How can I increase its speed (any method, code or database)? Please suggest some measures.

For eg: Every time the page loads, it checks whether the user is allowed to access that page or not. What controls he can access? The tree views are also binded based on the user access only.

On the loading of each controls, it again and again goes to fetch data. How can it be minimized?

4

4 に答える 4

2

フロントエンドの最適化から始めます。

  1. 必要がない場合は、コントロールの ViewState を無効にします。
  2. 静的コンテンツの Expire ヘッダーを設定します。(ブラウザのキャッシュ)
  3. GZIP 圧縮を有効にします。

YSLOW、PageSpeed などをインストールして、その他の推奨事項を確認してください。

Yスロー

ページ速度

次に、バックエンドの最適化を行います。

アクセス頻度の高いデータをキャッシュする

コードのリファクタリングを行います.....詳細

于 2012-05-29T13:35:19.260 に答える
1

アプリケーションでプロファイラー(JetBrainsのものが良い)を試してみてください。ピンチポイントがどこにあるかが表示されます。データベースに関連していると思われる場合は、クエリに対してexplain plan / showplanを実行して、クエリにかかっている時間と時間を費やしている場所を示します。実際、ボトルネックはどこにでもある可能性があり、それを追跡するには多少の手間がかかります(ネットワークに関連している場合もあります)。

于 2012-05-29T13:06:28.690 に答える
1

ユーザーが認証されたら、ログイン状態をキャッシュし、それをコードで使用します。これが違いを生むかどうかを確認してください。また、ユーザーごとにデータをキャッシュします。これを行うには、セッション状態を使用できます。

また、ページ ディレクティブ タグで trace 属性を true に設定します。これがパフォーマンス ヒットの原因であることを確認してください。

于 2012-05-29T13:17:09.147 に答える
1

OutputCacheは、一部の共有部分ビュー/ユーザー コントロールを増やすことができます。

于 2012-05-29T13:32:05.217 に答える