Кэширование вывода и профили кэша
Дата последнего изменения: 27 сентября 2010 г.
Применимо к: SharePoint Server 2010
В этой статье
Положительные и отрицательные стороны кэширования вывода
Профили кэша
Процедуры
Microsoft SharePoint Server 2010 использует технологию кэширования вывода, присущую ASP.NET, для управления временем и способом предоставления контента страницы. Кэширование вывода ASP.NET — это основа функциональных возможностей кэширования SharePoint Server 2010, следовательно, кэширование вывода в SharePoint Server 2010 работает аналогично технологии кэширования вывода, доступной в ASP.NET.
На сильно загруженном веб-сайте SharePoint Server 2010 кэширование часто загружаемых страниц даже на минуту может привести к значительным выигрышам в быстродействии. Пока страница кэширована в кэше вывода (и в течение срока действия кэша), для обслуживания последующих запросов на эту страницу используется страница из кэша вывода без выполнения кода, создающего эту страницу.
Положительные и отрицательные стороны кэширования вывода
Перед использованием кэширования вывода для повышения быстродействия визуализации страниц и элементов страниц, проанализируйте преимущества и недостатки возможной реализации кэширования вывода. В этом документе приведены не все аргументы, но к возможным преимуществам можно отнести следующие:
Каждый эквивалентный класс контента (такой как страница или элемент в странице) после своей первоначальной визуализации обеспечивает более быстрый отклик и, соответственно, уменьшает задержку.
После первоначальной визуализации каждый сервер использует меньше процессорного времени и электроэнергии для предоставления конкретной страницы.
Благодаря уменьшению трафика из-за кэширования вывода можно масштабировать каждый из источников данных для обслуживания большего числа веб-клиентов.
Для каждой страницы, копия которой находится в кэше вывода, серверу не нужно выполнять следующие действия:
Обращаться к базе данных, чтобы извлечь исходный код для ASPX-страницы и для всех ASCX-элементов управления на странице.
Повторно загружать и повторно визуализировать элементы управления.
Повторно отправлять запросы к источникам данных, используемых элементами управления.
Но перед принятием решения о реализации кэширования вывода следует также учесть и следующие моменты:
Кэширование вывода потребляет дополнительную память. Каждая версия страницы занимает память на веб-клиенте.
Использование кэширования вывода на нескольких (два и более) интерфейсных веб-серверах может повлиять на согласованность. Профиль кэша можно настроить так, чтобы обновления проверялись не при каждом запросе и, например, чтобы изменения в версию веб-страницы в кэше вывода вносились только спустя 60 секунд с момента обновления первоначальной страницы. При наличии в топологии двух интерфейсных веб-серверов (и в зависимости от службы балансировки нагрузки, используемой для маршрутизации пользовательских запросов), читатель контента веб-сайта может заметить несогласованность, если страница сначала визуализируется одним сервером, а последующий запрос направляется на другой сервер в течение 60-секундного окна.
Профили кэша
SharePoint Server 2010 добавляет более точный механизм настройки кэширования вывода (по сравнению с исходно доступным в ASP.NET 2.0). SharePoint Server 2010 включает в себя профили кэша, представляющие собой параметры кэша в стиле списка, которые можно назвать и использовать для страниц, элементов страниц, типов контента и уровней масштаба в развертывании веб-сайтов.
Использование профилей кэша позволяет управлять уровнем детализации, применяемым к кэшированию вывода, разрешать или запрещать владельцам веб-сайтов или администраторам выбирать собственные профили кэша и гибко применять их к макетам страниц, а также определять уровень применения кэширования вывода (доступны уровень семейства веб-сайтов, уровень веб-сайта и уровень макета страницы).
Можно организовать работу кэширования в зависимости от прав доступа того или иного пользователя к веб-сайту. Например, может быть определено три группы: одна с полным управлением, вторая с правами на чтение и запись и третья с правами только на чтение. Кэширование вывода визуализирует страницу одинаковым образом для пользователей с одинаковыми правами, поэтому можно использовать профили кэша для настройки кэширования под конкретные группы аудитории. В профилях кэша, поставляемых с SharePoint Server 2010 по умолчанию, система кэширования визуализирует страницу один раз для каждой группы прав доступа пользователей, а затем кэширует получающийся HTML-поток. Следующий пользователь с такими же правами доступа получает поток из кэша.
После создания и развертывания профиля кэша любые изменения в профиле кэша немедленно влияют на весь соответствующий контент на сайте. Например, если все макеты страниц библиотеки документов первоначально кэшировались на период 60 секунд, и продолжительность кэширования увеличивается до 120 секунд, каждый макет страницы библиотеки документов в этом семействе веб-сайтов кэшируется на 120 секунд, независимо от количества макетов страниц библиотеки документов или веб-сайтов в коллекции веб-сайтов.
Профиль кэша можно определить, используя профиль кэша, хранящийся в стандартном списке SharePoint Server 2010, и расширить его программно, используя обработчик VaryByCustom. Если профиль кэша применяется к веб-сайту и макету страницы из пользовательского интерфейса, принудительное распространение вниз обеспечивает согласованность на дочерних веб-сайтах. Политика кэша защищается независимо от других компонентов SharePoint Server 2010.
Примечание |
---|
Дополнительные сведения об этом способе создания профилей кэша см. в разделе Расширение возможностей кэширование с помощью обработчика события VaryByCustom. В нем описывается, как создать обработчик событий VaryByCustom, как изменить профиль кэша, чтобы включить настраиваемые строковые параметры, передаваемые в VaryByCustom, и как добавить требуемый код в файл global.asax. |
Процедуры
Включение кэша вывода для семейства веб-сайтов
Перейдите в корневой веб-сайт семейства сайтов. В меню Действия сайта выберите пункт Параметры сайта.
В разделе Администрирование семейства веб-сайтов выберите Кэш вывода семейства веб-сайтов.
Чтобы включить кэш вывода для этого семейства веб-сайтов, выберите Включить кэш вывода.
Выберите в списке Профиль кэша для анонимных пользователей профиль кэша для анонимных пользователей. Этот профиль применяется при обращении анонимных пользователей к веб-сайту из этого семейства веб-сайтов.
Выберите в списке Профиль кэша для зарегистрированных пользователей профиль кэша для зарегистрированных пользователей. Этот профиль применяется при обращении зарегистрированных пользователей к веб-сайту из этого семейства веб-сайтов.
Выберите параметры Политика кэша вывода страниц:
Если для веб-сайтов публикации может использоваться другой профиль кэша вывода, выберите Сайты публикации могут использовать другой профиль кэша вывода страниц.
Если для макетов страниц может использоваться другой профиль кэша вывода, выберите Макеты страниц могут использовать другой профиль кэша вывода страниц.
Если нужно, чтобы на страницах этого семейства веб-сайтов, отображались дополнительные сведения о кэше, включая дату и время последней визуализации содержимого страниц, выберите Включить отладочные данные кэша на страницах.
Нажмите кнопку ОК.
Включение кэша вывода для веб-сайта
Перейдите в корневой веб-сайт семейства сайтов. В меню Действия сайта выберите пункт Параметры сайта.
В разделе Администрирование сайта выберите Кэш вывода сайта.
Выберите значение параметра Профиль кэша для анонимных пользователей:
Если нужно, чтобы профиль кэша наследовался, выберите Наследовать.
Если нужно выбрать профиль кэша из доступных в данный момент профилей, выберите Выберите профиль кэша вывода страниц.
Если нужно применить эти параметры ко всем дочерним веб-сайтам этого корневого веб-сайта, выберите Применить ко всем дочерним сайтам.
Нажмите кнопку ОК.
Создание нового профиля кэша
Перейдите в корневой веб-сайт семейства сайтов. В меню Действия сайта выберите пункт Параметры сайта.
В разделе Администрирование семейства веб-сайтов выберите Профили кэша семейства веб-сайтов.
Нажмите кнопку Создать.
Определите и создайте новый профиль кэша.
Таблица 1. Описание данных профиля кэша
Данные
Описание
Название
Обязательный атрибут. Системное имя этого профиля кэша.
Отображаемое имя
Заполняет список доступных профилей кэша для владельцев сайта и владельцев макета страницы.
Отображать описание
Заполняет список доступных профилей кэша для владельцев сайта и владельцев макета страницы.
Выполнять проверку ACL
Выберите, чтобы все элементы в кэше использовались в соответствии с ролями безопасности.
Включено
Выберите, если нужно, чтобы кэширование использовалось.
Длительность
Число секунд, в течение которого доступна кэшированная версия.
Проверять на изменения
Установите этот флажок, чтобы при каждом запросе страницы проверять, изменился ли веб-сайт, и очищать кэш при изменении веб-сайта.
Снимите его, если нужно увеличить быстродействие. Если этот флажок не установлен, система не проверяет, обновились ли веб-сайты, в течение количества секунд, заданного параметром "Длительность".
В зависимости от настраиваемого параметра
Задайте значение в соответствии с описанием в документации по методу HttpCachePolicy.SetVaryByCustom ASP.NET.
В зависимости от заголовка HTTP
Задайте значение в соответствии с описанием в документации по свойству HttpCachePolicy.VaryByHeaders ASP.NET.
В зависимости от параметров строки запроса
Задайте значение в соответствии с описанием в документации по свойству HttpCachePolicy.VaryByParams ASP.NET.
В зависимости от прав пользователя
Выберите, чтобы доступ к кэшированной странице предоставлялся только пользователям с соответствующим набором прав во всех областях безопасности SharePoint.
Возможность кэширования
Выберите значение в раскрывающемся списке. Возможные варианты: NoCache, Private, Server, ServerAndNoCache, Public и ServerAndPrivate. Дополнительные сведения см. в разделе о перечислении HttpCacheability ASP.NET.
Безопасно для использования с проверкой подлинности
Выбирайте только для политик, которые нужно разрешить администраторам и разработчикам макетов страниц применять для сценариев с проверкой подлинности.
Разрешить авторам просматривать кэшированный контент
Установите, чтобы обойти поведение по умолчанию, при котором пользователям с правами изменения страниц запрещается доступ к кэшированным копиям этих страниц.
См. также
Концепции
Общие сведения о настраиваемом кэшировании
Дисковое кэширование для больших двоичных объектов