Bug 5433

Summary: Избыточное обращение к файлам при обработке запроса.
Product: Sisyphus Reporter: Sir Raorn <raorn>
Component: mod_phpAssignee: Alexey Gladkov <legion>
Status: CLOSED WONTFIX QA Contact: qa-sisyphus
Severity: enhancement    
Priority: P3    
Version: unstable   
Hardware: all   
OS: Linux   

Description Sir Raorn 2004-11-02 15:36:22 MSK
php скрипты перечитываются каждый раз при обработке запроса, несмотря на то что
файл не изменён. mod_perl в такой ситуации запоминает mtime скрипта и
перечитывает его только если файл изменился. При сильной нагрузке на сервер
наблюдаются задержки в обработке php скриптов.

С одной стороны поведение mod_php оправдано - mod_perl проверяет только сам
скрипт, но не подключаемые модули. В php существует традиция (?) разбивать код
по файлам (не оформляя как модули) и подключать их в основной скрипт (я могу и
ошибаться в данном вопросе - не видел хороших програм на php).

С другой стороны - проявляющиеся под нагрузкой "тормоза". В то же время
mod_perl, в силу особенностей языка, держит в памяти прекомпилированный (eval)
специальным образом (модуль Apache::Registry) код скрипта вызывая его при
необходимости, не знаю, возможно ли такое в php.
Comment 1 Alexey Gladkov 2005-08-29 20:03:15 MSD
такова архитектура mod_php.