キャッシュ パフォーマンスを監視する (SharePoint Server 2010)

 

適用先: SharePoint Foundation 2010, SharePoint Server 2010

トピックの最終更新日: 2016-11-30

この記事では、Microsoft SharePoint Server 2010 ファームのキャッシュ パフォーマンスの監視について説明します。キャッシュ パフォーマンスを監視することにより、ファームのキャッシュ設定が正しいことを、また、キャッシュが最大のパフォーマンスで実行されていることを確認できます。この記事では、バイナリ ラージ オブジェクト (BLOB) キャッシュ、ASP.NET 出力キャッシュ、およびオブジェクト キャッシュについて説明します。

この記事の内容

  • キャッシュの監視について

  • BLOB キャッシュ パフォーマンスの監視

  • ASP.NET 出力キャッシュ パフォーマンスの監視

  • オブジェクト キャッシュ パフォーマンスの監視

キャッシュの監視について

SharePoint Server 2010 には、BLOB キャッシュ、ASP.NET 出力キャッシュ、およびオブジェクト キャッシュの 3 種類のキャッシュがあります。これらのキャッシュにより、Web ページをブラウザーに読み込む速度が容易に向上します。

  • BLOB キャッシュは、ディスクベースのキャッシュです。Web ページをブラウザーに迅速に読み込むためにページ上で使用されるバイナリ ラージ オブジェクト ファイルを格納します。

  • ASP.NET 出力キャッシュは、ページに表示された出力を格納します。また、ページを要求しているユーザーの権限に基づいて、キャッシュされているページの異なるバージョンも格納します。

  • オブジェクト キャッシュは、リストやライブラリ、サイト設定、およびページ レイアウトなどのオブジェクトをフロントエンド Web サーバー コンピューターのメモリに格納することで、Web サーバーと SQL データベースの間のトラフィック量を減らします。その結果、これらのアイテムを必要とするページはより迅速に表示され、ページがクライアント ブラウザーに配信される速度が向上します。

定期的に特定のパフォーマンス モニターを確認し、パフォーマンスの問題があれば、設定を調整して問題を修正します。これらの一連の操作が監視です。モニターは、キャッシュ ヒット、キャッシュ ミス、キャッシュ圧縮、およびキャッシュ フラッシュを測定します。次に、これらの各パフォーマンス モニターについて説明します。

  • キャッシュ ヒットは、要求されたオブジェクトのデータが既にキャッシュに格納されているときに発生します。キャッシュ ヒットが高い値を示している場合は、パフォーマンスにもエンドユーザーのエクスペリエンスにも問題はありません。

  • キャッシュ ミスは、要求されたオブジェクトのデータがキャッシュに格納されていないときに発生します。キャッシュ ミスが高い値を示している場合は、パフォーマンスが低く、エンドユーザーに快適なエクスペリエンスを提供できていない可能性があります。

  • キャッシュ圧縮 (トリミングとも呼ばれる) は、キャッシュがいっぱいになっているときに、キャッシュされていないコンテンツが要求されると発生します。圧縮時、キャッシュから削除するコンテンツのサブセットが識別され、それらが削除されます。このとき削除されるのは、一般的には、要求頻度が低いコンテンツです。

    圧縮時に、サーバーのリソースが大量に消費され、サーバーのパフォーマンスとエンドユーザーのエクスペリエンスがその影響を受けることがあります。そのため、できるだけ発生しないようにしてください。キャッシュのサイズを増やすと、圧縮の発生頻度を下げることができます。圧縮が一般に発生するのは、キャッシュのサイズが減少したときです。オブジェクト キャッシュの圧縮は、BLOB キャッシュの圧縮ほどリソースを消費しません。

  • キャッシュ フラッシュは、キャッシュが完全に空になると発生します。キャッシュがフラッシュされた後は、キャッシュ ヒット対キャッシュ ミスの比率はほとんどゼロになります。その後、ユーザーがコンテンツを要求し、キャッシュが埋まっていくのにつれて、比率は上昇し、最終的に最適なレベルに達します。このカウンターが常時高い値を示している場合は、ライブラリ メタデータ スキーマが継続的に変更されているなど、ファームに関する問題が発生している可能性があります。

キャッシュ設定の効果を監視することで、エンドユーザーに快適なエクスペリエンスを提供できます。最適なパフォーマンスが得られるのは、キャッシュ ヒット対キャッシュ ミスの比率が高く、圧縮とフラッシュがほとんど発生しないときです。モニターがそのような状態を示していない場合は、キャッシュ設定を変更することで、パフォーマンスを改善できます。キャッシュ設定の詳細については、「キャッシュ設定の操作 (SharePoint Server 2010)」および「Web アプリケーションのキャッシュ設定を構成する (SharePoint Server 2010)」を参照してください。キャッシュの計画および戦略の詳細については、「キャッシュとパフォーマンスを計画する (SharePoint Server 2010)」を参照してください。

以下では、各種キャッシュの監視に関する特定の情報について説明します。

BLOB キャッシュ パフォーマンスの監視

キャッシュ設定の効果は、以下の表に示すパフォーマンス モニターを使用して監視できます。SharePoint Publishing Cache カウンター グループのモニターを表示できます。

カウンター名 理想的な値またはパターン メモ

Total Number of Compactions

0

これが常時または頻繁に高い値を示している場合は、要求されるデータの量に対してキャッシュ サイズが小さすぎます。キャッシュのサイズを増やしてパフォーマンスを改善してください。

BLOB Cache % full

>= 90% は赤を示します。

>= 80% は黄を示します。

<80% は緑を示します。

これは、キャッシュ サイズが小さすぎることを示している可能性があります。キャッシュのサイズを増やしてパフォーマンスを改善してください。

Publishing cache flushes / second

0

サイトの所有者が、キャッシュ フラッシュの原因となるような操作をサイトで実行している可能性があります。このような操作はオフピーク時に実行することで、ピーク使用時のパフォーマンスを改善できます。

Publishing cache hit ratio

使用パターンによって異なります。読み取り専用サイトでは、この比率は 1 になる必要があります。読み取り/書き込みサイトでは低い値になることがあります。

この比率が低い値を示している場合は、キャッシュできない未発行アイテムが要求されている可能性があります。これがポータル サイトの場合は、そのサイトがチェックアウトを必須とするように設定されている可能性があるか、多数のユーザーがアイテムをチェックアウトしています。

注意

BLOB キャッシュの場合、ユーザーの要求がキャッシュ ミスとしてカウントされるのは、要求されたファイルの拡張子がキャッシュの対象として構成されているときのみです。たとえば, .jpg ファイルのみがキャッシュの対象として構成されている場合に, .gif ファイルが要求されても、その要求はキャッシュ ミスとしてカウントされません。

ASP.NET 出力キャッシュ パフォーマンスの監視

キャッシュ設定の効果は、以下の表に示すパフォーマンス モニターを使用して監視できます。ASP.Net Applications カウンター グループのモニターを表示できます。

カウンター名 理想的な値またはパターン メモ

Cache API trims

0

ASP.NET 出力キャッシュに割り当てるメモリ量を増やします。

Cache API hit ratio

使用パターンによって異なります。読み取り専用サイトでは、この比率は 1 になる必要があります。読み取り/書き込みサイトでは、この比率は低めになることがあります。

ヒット率が低下する原因には次のことが考えられます。

  • (たとえば、インターネット用サイトで) 匿名ユーザー キャッシュを使用していると、ユーザーはキャッシュされていないコンテンツを定期的に要求します。

  • ASP.NET 出力キャッシュを認証済みのユーザー用に使用していると、多数のユーザーが、表示するページに対して編集権限を持っていることがあります。

  • 任意のページ (あるいはマスター ページまたはページ レイアウト) で一部の VaryBy* パラメーターをカスタマイズしたときや、キャッシュ プロファイルをカスタマイズしたときに構成したパラメーターによって、サイト内のページを効果的にキャッシュできなくなっている可能性があります (たとえば、多数のユーザーを持つサイトではユーザーによって異なる可能性があります)。

注意

ASP.NET 出力キャッシュの場合、ユーザーの操作が実行されていない一定の時間内に、すべてのページがキャッシュされます。したがって、フラッシュ関連の監視イベントがあります。

ASP.NET 出力キャッシュの詳細については、「出力キャッシュとキャッシュ プロファイル」(https://go.microsoft.com/fwlink/?linkid=121543&clcid=0x411) または「cache Element for caching (ASP.NET Settings Schema) (英語)」(https://go.microsoft.com/fwlink/?linkid=195986&clcid=0x411) (英語) を参照してください。

オブジェクト キャッシュ パフォーマンスの監視

オブジェクト キャッシュは、サイト ナビゲーションやコンテンツのクエリ Web パーツなどの機能で使用するサイト、ライブラリ、リスト、リスト アイテム、およびドキュメントに関するメタデータを格納するのに使用されます。このキャッシュは、参照するページでこれらの機能が使用されている場合に役立ちます。必要なデータは、コンテンツ データベースではなく、オブジェクト キャッシュに格納され、そのキャッシュからデータを直接取得できるからです。

オブジェクト キャッシュは、ファーム内の各 Web サーバーの RAM に格納されます。各 Web サーバーは、各自のオブジェクト キャッシュを個々に管理します。

キャッシュ設定の効果は、以下の表に示すパフォーマンス モニターを使用して監視できます。SharePoint Publishing Cache カウンター グループのモニターを表示できます。

カウンター名 理想的な値またはパターン メモ

Total number of compactions

0

これが高い値を示している場合は、要求されるデータの量に対してキャッシュ サイズが小さすぎます。キャッシュのサイズを増やしてパフォーマンスを改善してください。

Publishing cache flushes / second

0

サイトの所有者が、キャッシュ フラッシュの原因となるような操作をサイトで実行している可能性があります。このような操作はオフピーク時に実行することで、ピーク使用時のパフォーマンスを改善できます。

Publishing cache hit ratio

使用パターンによって異なります。読み取り専用サイトでは、この比率は 1 になる必要があります。読み取り/書き込みサイトでは低い値になることがあります。

この比率が低下し始めた場合は、次のような原因が考えられます。

  • キャッシュが最近フラッシュまたは圧縮された。

  • サイトに最近追加されたばかりのコンテンツにユーザーがアクセスしている。このような状況は、多数の新しいコンテンツをサイトに追加した後に発生することがあります。

See Also

Concepts

キャッシュとパフォーマンスを計画する (SharePoint Server 2010)
キャッシュ設定の操作 (SharePoint Server 2010)
Web アプリケーションのキャッシュ設定を構成する (SharePoint Server 2010)