次の方法で共有


ネットワーク アプリケーションのキャッシュ管理

このトピックとそれに関連するサブトピックでは、 WebClientWebRequestHttpWebRequest、および FtpWebRequest クラスを使用して取得されたリソースのキャッシュについて説明します。

キャッシュは、アプリケーションによって要求されたリソースの一時的なストレージを提供します。 アプリケーションが同じリソースを複数回要求した場合、リソースはキャッシュから返されるため、サーバーからリソースを再要求するオーバーヘッドを回避できます。 キャッシュを使用すると、要求されたリソースを取得するために必要な時間を短縮することで、アプリケーションのパフォーマンスを向上させることができます。 キャッシュを使用すると、サーバーへのトリップ数を減らすことで、ネットワーク トラフィックを減らすこともできます。 キャッシュによってパフォーマンスが向上しますが、アプリケーションに返されるリソースが古くなるリスクが高まります。つまり、キャッシュが使用されていない場合にサーバーから送信されたリソースと同じではありません。

キャッシュを使用すると、承認されていないユーザーまたはプロセスが機密データを読み取る可能性があります。 キャッシュされた認証済み応答は、追加の承認なしでキャッシュから取得できます。 キャッシュが有効になっている場合は、 CachePolicy に変更して BypassCache するか、この要求のキャッシュを無効に NoCacheNoStore します。

セキュリティ上の問題のため、中間層のシナリオではキャッシュは推奨 されません

このセクションにて

キャッシュ ポリシー
キャッシュ ポリシーとは何か、およびキャッシュ ポリシーを定義する方法について説明します。

Location-Based キャッシュポリシー
ハイパーテキスト転送プロトコル (http および https) リソースで使用できる場所ベースのキャッシュ ポリシーの各種類を定義します。

Time-Based キャッシュ ポリシー
時間ベースのキャッシュ ポリシーをカスタマイズするために使用できる条件について説明します。

ネットワーク アプリケーションでのキャッシュの構成
キャッシュを使用するキャッシュ ポリシーと要求をプログラムで作成する方法について説明します。

リファレンス

System.Net.Cache
WebRequestHttpWebRequest、およびFtpWebRequest クラスを使用して取得したリソースのキャッシュ ポリシーを定義するために使用する型と列挙型を定義します。