CakeFest 2024: The Official CakePHP Conference

Перенаправление функций WinCache

ОБРАТИТЕ ВНИМАНИЕ: wincache.rerouteini удалена в WinCache 1.3.7.0. Она была заменена автоматическим перенаправлением. Смотрите wincache.reroute_enabled.

Перенаправление функций WinCache (доступно с WinCache 1.2.0, удалено с WinCache 1.3.7.0) может использоваться для замены встроенных функций их эквивалентами, оптимизированными для работы с файловым кешем. Модуль WinCache включает оптимизированные под Windows реализации функций работы с файлами, что может повысить производительность PHP-приложений в случаях работы с файлами и сетевыми папками. Оптимизированные версии представлены для следующих функций:

Для настройки использования перенаправления в WinCache используется файл reroute.ini, который включён в установочный пакет. Скопируйте этот файл в ту же директорию, где находится php.ini. После этого добавьте в php.ini настройку wincache.rerouteini и укажите абсолютный или относительный путь к reroute.ini.

Пример #1 Включение перенаправления функций в WinCache

wincache.rerouteini = C:\PHP\reroute.ini

Замечание: Если перенаправление функций включено, то рекомендуется увеличить размер файлового кеша WinCache. Его размер настраивается в директиве wincache.fcachesize.

Файл reroute.ini содержит описание привязок встроенных функций PHP к их эквивалентам модуля WinCache. Каждая строка файла определяет привязку с использованием следующего синтаксиса:

<Имя функции PHP>:[<количество параметров функции>]=<имя функции wincache>

Пример файла приведён ниже. В этом примере вызов PHP-функции file_get_contents() подменяется вызовом функции wincache_file_get_contents() только если количество переданных параметров меньше или равно 2. Указание количества параметров полезно если подменяющая функция реализует обработку не всех исходных параметров.

Пример #2 Содержимое файла Reroute.ini

[FunctionRerouteList]
file_exists=wincache_file_exists
file_get_contents:2=wincache_file_get_contents
readfile:2=wincache_readfile
is_readable=wincache_is_readable
is_writable=wincache_is_writable
is_writeable=wincache_is_writable
is_file=wincache_is_file
is_dir=wincache_is_dir
realpath=wincache_realpath
filesize=wincache_filesize

add a note

User Contributed Notes 1 note

up
0
deivid dot garcia dot garcia at gmail dot com
9 years ago
Prior to Wincache 1.3.7.0 rerouting was broken, see this in the official forums:

http://forums.iis.net/t/1213205.aspx?Function+reroute+not+working]

After that version, file rerouting functions are enabled by default, to disable them use:

wincache.reroute_enabled=0
To Top