Apache Версия 2.0 Сервера HTTP
Description: | прячет статический список про запас файлов в памяти |
---|---|
Status: | экспериментальный |
Module Identifier: | file_cache_module |
Source File: | mod_file_cache.c |
mod_file_cache
, так читают этот документ тщательно.
кэширование
часто требуемые файлы, которые изменяются очень нечасто, - техника для того, чтобы уменьшить груз сервера.
mod_file_cache
обеспечивает два метода для того, чтобы прятать про запас часто требуемый
статический
файлы. Через директивы конфигурации, Вы можете направить
mod_file_cache
к любому открываются тогда
mmap()
файл, или предоткрыть файл и сэкономить открытый файл
описатель файла
. оба метода уменьшают груз сервера, обрабатывая запросы об этих файлах, внося свой вклад из работы (определенно, ввод / вывод файла) чтобы служить файлу, когда сервер начат, а не в течение каждого запроса.
заметить: Вы не можете использовать это для того, чтобы ускорить программы CGI или другие файлы, которым служат специальные довольные тренеры. Это может только использоваться для регулярных файлов, которым обычно служит Apache основной довольный тренер.
этот модуль - расширение и влезает в долги от
mod_mmap_static
модуль в Apacheе 1.3.
mod_file_cache
прячет список про запас статически формируемых файлов через
MMapFile
или
CacheFile
директивы в основном конфигурация сервера.
не все платформы поддерживают обе директивы. Например, Apache на Windows в настоящее время не поддерживает
MMapStatic
директива, в то время как другие платформы, как ЭКС-АН-ПРОВАНС, поддерживают оба. Вы получите ошибочное сообщение в ошибочной регистрации сервера, если Вы попытаетесь использовать неподдержанную директиву. Если дано неподдержанная директива, сервер начнется, но файл не будет прятаться про запас. На платформах, которые поддерживают обе директивы, Вы должны экспериментировать с обоими, чтобы видеть, который работает лучше всего для Вас.
MMapFile
директива
mod_file_cache
наносит на карту список статически формируемых файлов в память через запрос системы
mmap()
. этот запрос системы доступен на самых современных производных числах Unix, но не на всех. Есть иногда определенные для системы пределы на размере и числе файлов, которые могут быть
mmap()
редактор, экспериментирование - вероятно самый легкий способ узнать.
это
mmap()
луг сделан однажды в начале сервера или переначале, только. Так, всякий раз, когда один из нанесенных на карту файлов изменяет на файловой системе Вас
иметь
повторно начинать сервер (см.
Stopping and Restarting
документация). Повторять тот пункт: если файлы изменены
в месте
не повторно начиная сервер Вы можете закончить служить запросам, которые являются полностью поддельными. Вы должны обновить файлы, расцепляя старую копию и положив на место новую копию. Большинство инструментов, типа
rdist
и
mv
сделать это. Причина, почему это модули не заботится об изменениях к файлам, - то, что этот чек нуждался бы в дополнительном
stat()
каждый раз, который является тратой и против намерения сокращения ввода / вывода.
CacheFile
директива
mod_file_cache
открывает активное
ручка
или
описатель файла
к файлу (или файлы) перечисленный в директиве конфигурации и местах эти открытые описатели файла в тайнике. Когда файл требуют, сервер восстанавливает ручку от тайника и передает это к
sendfile()
(или
TransmitFile()
на Windows), программном интерфейсе приложения гнезда.
это кэширование описателя файла сделано однажды в начале сервера или переначале, только. Так, всякий раз, когда один из припрятавших про запас файлов изменяет на файловой системе Вас
иметь
повторно начинать сервер (см.
Stopping and Restarting
документация). Повторять тот пункт: если файлы изменены
в месте
не повторно начиная сервер Вы можете закончить служить запросам, которые являются полностью поддельными. Вы должны обновить файлы, расцепляя старую копию и положив на место новую копию. Большинство инструментов, типа
rdist
и
mv
сделать это.
не потрудитесь спрашивать директиву который рекурсивно тайники все файлы в справочнике. Пробуйте это вместо этого... См.
Include
директива, и рассматривает эту команду:
find /www/htdocs -type f -print \
| sed -e 's/.*/mmapfile &/' > /www/conf/mmap.conf
Description: | припрятать список про запас описателей файла во время запуска |
---|---|
Syntax: |
CacheFile
file-path
[
file-path
] ...
|
Context: | сервер config |
Status: | экспериментальный |
Module: | mod_file_cache |
CacheFile
директива открывает ручки к одному или более файлам (данный как whitespace отделенные аргументы) и помещает эти ручки в тайник во время запуска сервера. Ручки к припрятавшим про запас файлам автоматически закрыты на закрытии сервера. Когда файлы изменились на файловой системе, сервер должен быть повторно начат к повторно припрятать их про запас.
быть осторожным с
дорожка файла
аргументы: Они должны буквально соответствовать, тренеры перевода URL-К-ИМЕНИ-ФАЙЛА Апача дорожки файловой системы создают. Мы не можем сравнить inodes или другой материал, чтобы соответствовать дорожкам через символические связи
и т.д.
потому что это снова стоило бы дополнительный
stat()
запросы системы, который не приемлем. Этот модуль может или, возможно, не работать с именами файла, переписанными
mod_alias
или
mod_rewrite
.
CacheFile /usr/local/apache/htdocs/index.html
Description: | нанести на карту список файлов в память во время запуска |
---|---|
Syntax: |
MMapFile
file-path
[
file-path
] ...
|
Context: | сервер config |
Status: | экспериментальный |
Module: | mod_file_cache |
MMapFile
директива наносит на карту один или более файлов (данный как whitespace отделенные аргументы) в память во время запуска сервера. Они автоматически ненанесены на карту на закрытии сервера. Когда файлы изменились на файловой системе по крайней мере a
HUP
или
USR1
сигнал должен быть, посылают серверу к заново
mmap()
их.
быть осторожным с
дорожка файла
аргументы: Они должны буквально соответствовать, тренеры перевода URL-К-ИМЕНИ-ФАЙЛА Апача дорожки файловой системы создают. Мы не можем сравнить inodes или другой материал, чтобы соответствовать дорожкам через символические связи
и т.д.
потому что это снова стоило бы дополнительный
stat()
запросы системы, который не приемлем. Этот модуль может или, возможно, не работать с именами файла, переписанными
mod_alias
или
mod_rewrite
.
MMapFile /usr/local/apache/htdocs/index.html