Средства отладки и анализа для сайта
327 сообщений
#14 лет назад
Добрый день.Жил был сайт и постепенно на него навешивали всё больше функций. Часть кода постепенно оказывалась бессмысленной, но тем не менее выполнялась. Каждая функция кушала свой кусочек памяти и занимала процессорное время вне зависимости от того, нужна она или уже давно не используется. Наступил логический конец - всё тормозит. Теперь эту кучу надо как-то разгрести. Есть вариант правильный - перечитать весь код, убрать лишнее, возможно оптимизировать структуру данных и т.п. Но кода много. Хотелось бы какой-нибудь инструмент для анализа что и насколько нагружает сайт, чтобы исправлять сразу наиболее тяжёлые места (на уровне "запрос такой-то в файле таком-то вызван ХХ раз за месяц, а вот переменная YY ни разу не использовалась" ). Вопрос - есть ли такой инструмент?
Ещё есть вариант поставить eAccelerator или что-то подобное - на какое-то время видимо поможет. Но это тоже "костыль".
5330 сообщений
#14 лет назад
Есть тесты, есть профайлинг кода.В конечном итоге все тесты будут являться поводом для рефакторинга кода.
Я бы начал с написания тестов, что бы в процессе не вырезать "пациенту" лишнее
327 сообщений
#14 лет назад
Работает верно, но медленно.Тесты т.е. везде и всюду добавить в код вывод затрат времени/памяти и его уже анализировать?
16382 сообщения
#14 лет назад
Цитата ("intelleks"):Вопрос - есть ли такой инструмент?
Ну так чтобы совсем автоматически, да и на живом сайте я бы не стал экспериментировать. А так ArtPro верно говорит - пройтись профайлером, проанализировать запросы.
Цитата ("intelleks"):
Ещё есть вариант поставить eAccelerator или что-то подобное - на какое-то время видимо поможет. Но это тоже "костыль".
Это не костыль а очень даже полезная штука. Независимо от того что там в коде.
Вообще может так получиться, что весь этот разбор и оптимизация окажутся сопоставимы или даже дороже перестройки всего с нуля.
327 сообщений
#14 лет назад
Цитата ("frig"):Это не костыль а очень даже полезная штука. Независимо от того что там в коде.Признаю, поторопился

Цитата:
Вообще может так получиться, что весь этот разбор и оптимизация окажутся сопоставимы или даже дороже перестройки всего с нуля.Наверняка. Предлагал, но клиент на такое не готов пойти. Увы.
Пойду смотреть профайлеры.
16382 сообщения
#14 лет назад
Цитата ("intelleks"):Предлагал, но клиент на такое не готов пойти. Увы.
Видать думает, что править будет дешевле

762 сообщения
#14 лет назад
Цитата ("intelleks"):Предлагал, но клиент на такое не готов пойти. Увы.
а можно еще клиенту предложить перейти с шаред хостинга на vps достаточной мощности или на дедик.
Больше ресурсов = меньше тормозов.
А в процессе поддержки и т.д. - можно как раз потихоньку оптимизировать код, тем более, что скорее всего тенденции к обрастанию модулями, информацией и т.д. - есть.
З.Ы. еще бы неплохо логи посмотреть, что там пишется... часто влогах сервера при выполнении скриптов отображаются не только ошибки, но и разные таймауты и т.д.
1895 сообщений
#14 лет назад
Все зависит как сделан сайт, если делан на какомто фреймворке с MVC-архитектурой, то обычно есть масса средств в самом фреймворке для профайлинга, разгребать что ктото наваял - удовольствие не из дешевых и быстрых, иногда дешевле и быстрее переписать все с нуля
327 сообщений
#14 лет назад
Он уже на VPS. О фреймворках там даже близко речи нет


Что странно, в общем-то работает сносно, время генерации страниц 0,1-7 секунд. Но вот в момент создания темы резко томозил. Страницы 15-30 секунд создавал, а кому то и вовсе 504 Timeout возвращал. Объяснить это нашествием поисковиков разве что...