質問

私は以前質問するに言及したよう

、私はパフォーマンスに問題が生じていますウェブサイトの...いくつかのSQLクエリは、サーバを殺しています。しかし、この記事の言及のタイトルとして、私は、サイトのパフォーマンスを向上させるためにOutputCache Pageディレクティブを見ます。

が、私はこのディレクティブに関するいくつかの質問に出くわしました: 1 - 私も一つを有するページにOuputCacheディレクティブを宣言するWebユーザーコントロールを持っている場合は、1が「勝つ」であろうか? 2 - 期間に関する最良のpraticeは何ですか?私はあまりにもスライディングウィンドウを持っているのが大好きです。

あなたの助けてくれてありがとうとご覧ください http://www.developerit.comする

役に立ちましたか?

解決

はどちらもキャッシュされていないリクエストに応じて、ページとコントロールの両方が作成され、その後、出力キャッシュに追加します。ページがキャッシュされている場合、制御は関係なく、それがキャッシュ内だかどうかの、作成されません - そのマークアップはページのキャッシュされたコピーに含まれています。ページがキャッシュされ、制御がされていない場合は、コントロールのキャッシュされたマークアップは、ページで使用されます。

他のヒント

ここで出力キャッシュの良い記事があります: http://www.4guysfromrolla.com /articles/121306-1.aspxするます。

一般的に、あなたはページとフラグメントのキャッシングを見ているようです。できればそれはあなたに最高のパフォーマンス上の利点を与えるとして何がやりたいことは、ページキャッシュです。あなたはユーザーごとに動的に変更する必要がありますページ、例えば上の領域を持っている場合しかし、:あなたは、ページの上部にある[こんにちは{ユーザー名} '言っている、あなたはフラグメントキャッシュを見てする必要があります。

。 出力がキャッシュされた情報と動的情報から縫い合わせなければならないので、

フラグメントキャッシュは、ページキャッシュほど効果的ではありませんが、それはNOのキャッシュよりもはるかに優れまだ普通だ!

これは、ページが何をするかに応じて、キャッシュとデータベースの負荷を微調整するために、芸術のビットだが、それは何桁速い非キャッシュよりも、ページの読み込みを行うことができます。

FYI - DBクエリがサイトを殺している場合は、あなたが同じ情報のデータベースを打っておく必要がないのでこと、また、それらを飼いならすおよび/または個別に、それらの出力をキャッシュを見てみたいことがあります。

また、キャッシングのための「varyByParam」はあまりにもかなり便利であることを理解 - あなたは3つの言語でページを持っていると言う、あなたは、その言語の構成要素のいくつかの並べ替え限り、あなたのURLとして、varyByParamを使用して、各言語用のページをキャッシュすることができますvaryByParamを拾うことができます。

HTH、 ランス

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top