Пункт 123. Модуль Apache mod_cache_socache
mod_cache_socache
реализует диспетчер хранения на основе общего кэша объектов (socache) для mod_cache
.
Заголовки и тела кэшированных ответов объединяются и хранятся под одним ключом в кэше общих объектов. На выбор доступно несколько реализаций кэшей общих объектов.
Несколько ответов на согласование контента могут храниться одновременно, однако кэширование частичного контента пока не поддерживается этим модулем.
# Включить кеширование
КэшSocache shmcb
CacheSocacheMaxSize 102400
<Расположение "/foo">
CacheEnable socache
</местоположение>
# Возврат к дисковому кешу
КэшSocache shmcb
CacheSocacheMaxSize 102400
<Расположение "/foo">
CacheEnable socache
CacheEnable диск
</местоположение>
Примечание:
mod_cache_socache
требуются службы
mod_cache
, которые должны быть загружены до
mod_cache_socache
.
Директива CacheSocache
Описание: | Реализация кэша общих объектов для использования |
Синтаксис: | CacheSocache type[:args] |
Контекст: | конфигурация сервера, виртуальный хост |
Положение дел: | Расширение |
Модуль: | mod_cache_socache |
Совместимость: | Доступно в Apache 2.4.5 и более поздних версиях. |
Директива CacheSocache
определяет имя используемой реализации кэша общих объектов, за которой следуют необязательные аргументы для этой реализации. На выбор доступно несколько реализаций кэшей общих объектов.
КэшSocache shmcb
Директива CacheSocacheMaxSize
Описание: | Максимальный размер (в байтах) записи, помещаемой в кэш |
Синтаксис: | CacheSocacheMaxSize bytes |
По умолчанию: | CacheSocacheMaxSize 102400 |
Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
Положение дел: | Расширение |
Модуль: | mod_cache_socache |
Совместимость: | Доступно в Apache 2.4.5 и более поздних версиях. |
Директива CacheSocacheMaxSize
устанавливает максимальный размер в байтах для комбинированных заголовков и тела документа, который рассматривается для хранения в кэше. Чем больше заголовки, хранящиеся рядом с телом, тем меньше может быть тело.
Модуль mod_cache_socache
будет пытаться кэшировать только те ответы, которые имеют явную длину содержимого или достаточно малы, чтобы их можно было записать за один проход. Это делается для того, чтобы
mod_cache_disk
модуль имел возможность кэшировать ответы большего размера, чем те, которые можно кэшировать в пределах
mod_cache_socache
.
CacheSocacheMaxSize 102400
Директива CacheSocacheMaxTime
Описание: | Максимальное время (в секундах) для помещения документа в кэш |
Синтаксис: | CacheSocacheMaxTime seconds |
По умолчанию: | CacheSocacheMaxTime 86400 |
Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
Положение дел: | Расширение |
Модуль: | mod_cache_socache |
Совместимость: | Доступно в Apache 2.4.5 и более поздних версиях. |
Директива CacheSocacheMaxTime
устанавливает максимальное время жизни в секундах для документа, который будет храниться в кеше. Это значение переопределяет время жизни документа, определенное для документа протоколом HTTP.
CacheSocacheMaxTime 86400
Директива CacheSocacheMinTime
Описание: | Минимальное время (в секундах) для помещения документа в кэш |
Синтаксис: | CacheSocacheMinTime seconds |
По умолчанию: | CacheSocacheMinTime 600 |
Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
Положение дел: | Расширение |
Модуль: | mod_cache_socache |
Совместимость: | Доступно в Apache 2.4.5 и более поздних версиях. |
Директива CacheSocacheMinTime
устанавливает количество секунд после времени жизни ответа, в течение которого ответ должен кэшироваться в кэше общих объектов. Если ответ хранится только на время его актуальности, не будет возможности повторно проверить ответ, чтобы снова сделать его свежим.
CacheSocacheMinTime 600
Директива CacheSocacheReadSize
Описание: | Минимальный размер (в байтах) документа для чтения и кэширования перед отправкой данных вниз по течению. |
Синтаксис: | CacheSocacheReadSize bytes |
По умолчанию: | CacheSocacheReadSize 0 |
Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
Положение дел: | Расширение |
Модуль: | mod_cache_socache |
Совместимость: | Доступно в Apache 2.4.5 и более поздних версиях. |
Директива CacheSocacheReadSize
устанавливает минимальный объем данных в байтах, которые должны быть прочитаны из серверной части перед отправкой данных клиенту. Значение по умолчанию, равное нулю, приводит к тому, что все считанные данные любого размера передаются вниз по течению клиенту сразу же по мере их поступления. Установка более высокого значения приводит к тому, что кэш диска буферизует по крайней мере это количество перед отправкой результата клиенту. Это может повысить производительность при кэшировании контента с медленного обратного прокси-сервера.
Эта директива вступает в силу только тогда, когда данные сохраняются в кэше, в отличие от данных, которые обслуживаются из кэша.
CacheSocacheReadSize 102400
Директива CacheSocacheReadTime
Описание: | Минимальное время (в миллисекундах), которое должно пройти при чтении, прежде чем данные будут отправлены вниз по течению. |
Синтаксис: | CacheSocacheReadTime milliseconds |
По умолчанию: | CacheSocacheReadTime 0 |
Контекст: | конфигурация сервера, виртуальный хост, каталог, .htaccess |
Положение дел: | Расширение |
Модуль: | mod_cache_socache |
Совместимость: | Доступно в Apache 2.4.5 и более поздних версиях. |
Директива CacheSocacheReadTime
устанавливает минимальное количество прошедшего времени, которое должно пройти перед попыткой отправить данные нижестоящему клиенту. В течение периода времени данные будут буферизованы перед отправкой результата клиенту. Это может повысить производительность при кэшировании контента с обратного прокси-сервера.
Значение по умолчанию, равное нулю, отключает эту опцию.
Эта директива вступает в силу только тогда, когда данные сохраняются в кэше, в отличие от данных, которые обслуживаются из кэша. Рекомендуется использовать эту опцию вместе с
CacheSocacheReadSize
директивой, чтобы гарантировать, что сервер не будет чрезмерно буферизовать, если данные будут поступать быстрее, чем ожидалось.
CacheSocacheReadTime 1000