Q1) Я разрабатываю CMS (а чего нет!), но приоритет отдается кешированию. Кешируется буквально все. Строки БД, запросы идентификаторов БД, данные конфигурации, обработанные данные, скомпилированные шаблоны. В настоящее время он имеет два уровня кеширования.
Первый - это кеш кода операции или кеш памяти, такой как apc, eaccelerator, xcache или memcached. Если запись там не найдена, она ищется во вторичном медленном кэше, т.е. php включает.
Действительно ли кеширование кода операции быстрее, чем выполнение require_once для файла php с массивом данных var_export в нем? Мои тесты неубедительны, поскольку мой блок разработки (5.3 из XAMPP) продолжает выдавать ошибки при установке любой из вышеупомянутых программ.
Q2) В CMS есть множество вспомогательных классов, которые загружаются автоматически по запросу вместо загрузки всех файлов. В большинстве случаев перед каждым из них есть требование, поэтому автозагрузка не требуется, но вопрос не в этом. Поскольку в скрипт страницы может быть включено до 50/60 вспомогательных файлов, у меня есть ощущение, что, если бы сайт находился под давлением, он бы прогнулся из-за всех операций ввода-вывода, которые при этом возникают. На данный момент не обращайте внимания на наличие кэша вывода, который устранит необходимость в том, что я собираюсь предложить, а также на то, что кеши кодов операций сделают это спорным. Я попытался объединить все вспомогательные файлы, необходимые для выполнения скриптов, в один файл. Это достижимо и работает хорошо, однако имеет побочный эффект, заключающийся в значительном увеличении использования памяти, хотя технически используется один и тот же код.
Что вы думаете и думаете по этому поводу?