Управление кэшем для сетевых приложенийCache Management for Network Applications

В этом разделе и его подразделах описывается кэширование ресурсов, полученных с помощью классов WebClient, WebRequest, HttpWebRequest и FtpWebRequest.This topic and its related subtopics describe caching for resources obtained using the WebClient, WebRequest, HttpWebRequest, and FtpWebRequest classes.

Кэш обеспечивает временное хранение ресурсов, которые были запрошены приложением.A cache provides temporary storage of resources that have been requested by an application. Если приложение запрашивает один и тот же ресурс несколько раз, он может быть возвращен из кэша. Это позволяет избежать лишнего расходования ресурсов, связанного с его повторным запросом с сервера.If an application requests the same resource more than once, the resource can be returned from the cache, avoiding the overhead of re-requesting it from the server. Кэширование может повысить производительность приложения, ускоряя получение запрашиваемых ресурсов.Caching can improve application performance by reducing the time required to get a requested resource. Оно также может помочь уменьшить объем сетевого трафика, сокращая число обращений к серверу.Caching can also decrease network traffic by reducing the number of trips to the server. Хотя кэширование повышает производительность, также растет риск того, что возвращаемый приложению ресурс может оказаться устаревшим, то есть отличающимся от того ресурса, который был бы отправлен с сервера при отсутствии кэширования.While caching improves performance, it increases the risk that the resource returned to the application is stale, meaning that it is not identical to the resource that would have been sent by the server if caching were not in use.

Из-за кэширования также возможен несанкционированный доступ к конфиденциальным данным со стороны пользователей или процессов.Caching may allow unauthorized users or processes to read sensitive data. Прошедший проверку подлинности ответ может быть получен из кэша без дополнительной авторизации.An authenticated response that is cached may be retrieved from the cache without an additional authorization. Если кэширование включено, измените значение CachePolicy на BypassCache или NoCacheNoStore, чтобы отключить кэширование для запроса.If caching is enabled, change to CachePolicy to BypassCache or NoCacheNoStore to disable caching for this request.

По соображениям безопасности кэширование не рекомендуется использовать в сценариях среднего уровня.Due to security concerns, caching is not recommended for middle tier scenarios.

СодержаниеIn This Section

Политика кэшаCache Policy
Описывается, что такое политика кэша и как ее определить.Explains what a cache policy is and how to define one.

Политики кэша на основе расположенияLocation-Based Cache Policies
Описание каждого типа политики кэша на основе расположения для ресурсов HTTP и HTTPS.Defines each type of location-based cache policy available for Hypertext Transfer Protocol (http and https) resources.

Политики кэша на основе времениTime-Based Cache Policies
Описание условий, которые можно использовать для настройки политики кэша на основе времени.Describes the criteria that can be used to customize a time-based cache policy.

Настройка кэширования в сетевых приложенияхConfiguring Caching in Network Applications
Описываются программные способы создания политик кэша и запросов, для которых применяется кэширование.Describes how to programmatically create cache policies and requests that use caching.

СправочникReference

System.Net.Cache
Определение типов и перечислений, используемых для определения политик кэширования ресурсов, получаемых с помощью классов WebRequest, HttpWebRequest и FtpWebRequest.Defines the types and enumerations used to define cache policies for resources obtained using the WebRequest, HttpWebRequest, and FtpWebRequest classes.