次の方法で共有


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

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

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

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

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

このセクションにて

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

ロケーションベースのキャッシュポリシー ハイパーテキスト転送プロトコル (http および https) リソースで利用可能な各種のロケーションベースのキャッシュポリシーを定義します。

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

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

リファレンス

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