TechZilla - похоже, у вас и YCS есть недоразумение.Я бы проигнорировал это.
У меня есть 2, надеюсь, полезных ввода:
1.Моя самая надежная догадка - придерживаться вызовов PHP, а не отбрасывать другой процесс :
Формирование нового процесса делает все виды забавных вещей: дескриптор файла и копии состояния, резервное копирование всегостек, резервное копирование состояния регистра, перемещение областей памяти, загрузка нового исполняемого файла с диска, загрузка каждой из его общих библиотек, которые еще не загружены, скачки инструкций и регистров данных буквально тысячи раз (что означает много вероятных ЦПкэш-память отсутствует!) для исправления местоположения памяти огромная головная боль .
Вызов функции (даже для привязки C) - это всего лишь немного дополнительного пространства в стеке инесколько прыжков указателя инструкций.В самый первый раз, когда ваше приложение загружается, оно будет иметь дело с загрузкой любых зависимых библиотек (головная боль определена выше), но они остаются в памяти.Не так много, как большое дело.Вы не можете сделать то же самое с целой программой.
2.Предложение memcache от Ajreal звучит как хорошее третье решение
Вы всегда можете использовать inotify, чтобы сообщить сценарию, когда важный каталог был изменен, и коснуться (не обязательно сенсорный инструмент) db (даже плоский файл).или memcache), сообщая, что оно было изменено.
Весь код, проверяющий содержимое каталога, может проверять кэш, если не указано иное.Кэш файловой системы Linux сделает проверку вашего файла мьютекса очень эффективной: только память, без попадания на диск, если он не был изменен.