Pull to refresh

Comments 15

Я сталкивался с подобной проблемой. Сайт был на PHP, помог Advanced PHP debugger. Там по трейсам можно будет поразбираться.
Подробнее можно узнать тут
http://ru2.php.net/manual/ru/book.apd.php
http://pecl.php.net/package/apd
Посмотрите в сторону xDebug + Profiling
Уже писали на Хабре. И как профилировать и определять узкие места тоже писали.
UFO just landed and posted this here
при хорошей нагрузке даже без огромных запросов все будет тормозить.
Раз 60% съедает постгрес, значит стоит для начала разобраться с именно с ним.
- Выявить медленные запросы и провести их оптимизацию.
- создать и расставить в запросах индексы.
- уменьшить количество запросов, (особенно вставку и обновление), по возможности прикрутить кеширование
- прикрутить таймер исполнения к каждой странице, и результат складывать в лог. так можно выявить разделы сайта которые больше всех выполняются. далее можно также уже сами тормозные скрипты исследовать.
- xdebug к php поможет более детально изучить состояние переменных и памяти при дебаге
- ну и конечно код надо просмотреть. может чтото внутри какое безобразие происходит

готовых автоматизированных решений для анализа производительности не подскажу, к сожалению.
к сожалению код не мой, в нем будет трудно разобраться.. буду ждать новый сервер и готовить с нуля новую версию сайта. С кешированием, акселерацией, сжатием и оптимизированными запросами. Что бы всё как у людей :)
Если надо узнать, какие запросы в Постгрес тормозят - поставьте pgfouine.
Еще, какая версия постгрес, есть ли там и включен ли автовакуум? Если нет, делается ли периодически VACUUM?
У меня все проблемы решились при переезде на восьмую версию PostgreSQL.
UFO just landed and posted this here
В мыскле может помочь запрос "show process_list", наверняка аналогичное есть и на постресе
UFO just landed and posted this here
приходи на phpConf - будет отдельный доклад по оптимизации PostgreSQL.
с удовольствием пришел, но нет лишних 6к :(
лишних - ни у кого нет. рассматривай это как инвестиции в свое образование. в конце концов - фирма может потратиться на обучение.
возможно проблема действительно в плохо спроектированной базе - нет индексов, ключи текстовые и тд... На самом деле очень тяжело угадывать - задача из области "машина плохо едет". Для пхп решений самым действенным будет написать кеширование сайта.

"увидеть" чем занимается postgres - вполне возможно. Это уже к примеру: http://habrahabr.ru/blog/postgresql/2502…
дальше - создать идексы под запросы, если не сильно углубляться; потюнить сам postgres.
Рекомендую также iostat посмотреть, так как винты - узкое место.
Sign up to leave a comment.

Articles