Назад | Перейти на главную страницу

Производительность модулей php по сравнению с компилированными в

У меня проблемы с производительностью modx [cms system] и php. и мне было интересно, может ли это иметь какое-либо отношение к способу компиляции php. Есть ли преимущество в производительности при компиляции php с определенными модулями по сравнению с загрузкой во время выполнения? т.е. проблемы с производительностью, по-видимому, возникают во время операций с базой данных с использованием pdo, в медленной системе есть -disable-pdo, могу ли я ожидать значительного увеличения производительности, если бы я перекомпилировал его --with-pdo [кстати, что означает --with-pdo = общий м

На самом деле это не имеет значения. Я предполагаю, что вы используете PHP не как CGI (FastCGI - это что-то еще). Разница во времени загрузки для статически или динамически связанных модулей повлияет только на начальное время загрузки, и для обоих есть компромиссы в производительности.

Почти невозможно добавить к разнице что-либо, если PHP запускается один раз, а затем обслуживает более одного запроса с вашего внешнего сервера (Apache, nginx и т. Д.). Скорее всего, сам код плохо оптимизирован, выполняет множество ненужных запросов к базе данных, использует поиск по неиндексированным столбцам БД, выполняет ненужные циклы, записывает и перезаписывает строки снова и снова и так далее и тому подобное. Список действительно можно продолжать и продолжать.

Профилируйте и протестируйте код, а также попытайтесь найти то, что можно легко оптимизировать с наименьшими усилиями. Добавленные индексы БД - это халява и часто на много порядков влияют на время загрузки. Установите кеш-код операции (XCache отлично подходит, APC и memcache также хороши). Используйте кеш объекта (здесь лучше всего подходит memcache, потому что он разделяет свой кеш между всеми процессами, но XCache или APC тоже подойдут). Используйте кеш HTML. и т.п.