Медленный PHP скрипт-автоматическая отладка и диагностика?
Как я могу узнать, идет ли PHP-скрипт плохо и работает очень медленно, когда его запускают сотни пользователей каждую секунду, а еще лучше, есть ли какой-либо инструмент, который мог бы сказать мне, какая часть кода замедляет меня? ...
Я не хочу публиковать код здесь (в основном потому, что этот вопрос относится к чему-то еще и потому, что это пустая трата места) и желательно никогда не публиковать его нигде, потому что это на самом деле беспорядок!... беспорядок, который я понимаю, и да, я закодировал его, но все еще беспорядок, который оскорбит любого, кто попытается понять это... так что если у вас есть какие-либо творческие идеи, пожалуйста, дайте мне знать!
Ура!
( спасибо уже за входящие ответы! )
3 ответов
включить профилирование XDebug, и отправить полученные файлы через WinCacheGrind (Windows) или KCacheGrind (Linux).
Это позволит вам увидеть разбивку, какие функции вызываются всего, и где время тратится. Обучение использованию XDebug является обязательным для любого серьезного разработчика PHP.
здесь казалось бы, хороший учебник по началу работы с профилированием XDebug.
вам понадобятся два инструмента
- профилировщик (Google it)
Я использую это на работе:
http://www.nusphere.com/products/php_profiler.htm (коммерческий)
- тестер нагрузки
проверьте этот сайт для получения дополнительной информации :
http://performance-testing.org/content/performance-testing-tools
Я бы рекомендовал использовать профилировщик PHP. отладчик xdebug который является отладчиком PHP и профилировщиком, может много помочь. Существуют также другие отладчики, например отладчик Zend.
для анализа результатов профилирования также может потребоваться специальный инструмент. Я использовал WinCacheGrind в Windows и KCachegrind в Linux.
отчет профилирования показывает тонны полезной информации, например, какие строки кода были вызваны сколько раз и в какие выполнение функций занимало большую часть времени.