Поставщик кэша вывода для кэша роли Azure

Обновлено: Август 2015 г.

ImportantВажно!
Во всех новых разработках рекомендуется использовать кэш Redis для Azure. Текущую документацию и руководства по выбору предложения службы кэша Azure см. в статье Какое предложение службы кэша Azure подходит мне лучше всего?

Поставщик кэша вывода Microsoft Azure представляет собой механизм хранения вне процесса для данных кэша вывода. Эти данные специально предназначены для полных откликов HTTP (кэширование вывода страницы). Поставщик подключается к новой точке расширения поставщика кэша вывода, которая была представлена в ASP.NET 4.

Пример кэширования вывода см. в статье Кэширование состояния сеанса и пример кэширования вывода.

noteПримечание
В этом выпуске поставщик кэша вывода не поддерживает кэширование вывода на уровне проверки веб-форм.

В следующем списке приводятся преимущества хранения данных кэша вывода вне процесса.

  • Разработчики могут хранить большие объемы данных кэша вывода, поскольку единственным эффективным верхним граничным значением количества данных, которое может быть кэшировано, является совокупный объем памяти, доступный для кластера кэша .

  • При удалении веб-приложения данные кэша вывода не удаляются. Поскольку данные кэша вывода хранится вне рабочего процесса IIS, данные вывода кэша остаются в силе после перезапусков приложения ASP.NET.

  • К ним можно применять функцию сжатия, доступную в свойствах клиента кэша.

  1. Сначала настройте кэш, который будет использоваться с поставщиком ASP.NET. кэширование можно разметить в совмещенной топологии или в выделенной роли.

  2. С помощью пакета NuGet добавьте поддержку кэширование в проект ASP.NET в Visual Studio. Инструкции см. в разделе Инструкции Подготовка Visual Studio к использованию кэша роли Azure.

    ImportantВажно!
    Для выполнения этих действий требуется последняя версия диспетчера пакетов NuGet (2.1.31002.9028 или более поздняя версия). Чтобы установить последнюю версию диспетчера пакетов NuGet перейдите на веб-сайт по адресу: http://go.microsoft.com/fwlink/?LinkId=240311.

  3. Удалите существующие элементы caching, настраивающие кэширование вывода. Не удаляйте закомментированный раздел caching, который был добавлен с помощью пакета NuGet.

  4. В файле web.config раскомментируйте раздел caching.

        <!-- Azure Caching output caching provider -->
        <caching>
          <outputCache defaultProvider="AFCacheOutputCacheProvider">
            <providers>
              <add name="AFCacheOutputCacheProvider" 
                type="Microsoft.Web.DistributedCache.DistributedCacheOutputCacheProvider, Microsoft.Web.DistributedCache"
                cacheName="default" 
                dataCacheClientName="default" 
                applicationName="AFCacheOutputCache" />
            </providers>
          </outputCache>
        </caching>
    

В следующем списке приводятся дополнительные изменения конфигурации, оказывающие влияние на поставщика кэша вывода.

  • Измените целевой именованный кэш с помощью атрибута cacheName элемента add.

  • Измените источник параметров клиента кэша с помощью атрибута dataCacheClientName элемента add. Задайте этот атрибут для имени существующего раздела dataCacheClient в файле web.config.

  • Измените поведение клиента кэша путем изменения параметров в связанном разделе dataCacheClient. Например, включите сжатие с помощью атрибута isCompressionEnabled.

    <dataCacheClient name="default" isCompressionEnabled="true">
    
    Список доступных параметров конфигурации см. в разделе Параметры конфигурации клиента кэша роли (Web.config). Обратите внимание, что поставщики ASP.NET для кэширование не поддерживают типы настраиваемой или двоичной сериализации.

  • Измените параметры поставщика кэша вывода. Список доступных параметров конфигурации см. в разделе Параметры конфигурации поставщика кэша вывода ASP.NET в кэше роли Azure.

См. также

Показ: