[РЕШЕНО] Страница отдается очень долго

Главные вкладки

Аватар пользователя FORTIS FORTIS 30 июня 2010 в 19:52

Стоит nginx (фронт) + apache + eaccelerator + mysql

Некоторые страницы сайта под админом загружаются по 50 секунд, причем в первый раз страница отдается за 50 секунд, во второй за 2, в обоих случаях devel показывает одинаковое количество запросов Executed 380 queries in 1788.54 milliseconds. Но если время выполнения запросов 1788.54 milliseconds (то есть дело не в запросах и настройке базы) тогда на что тратятся остальные почти 48 секунд? Подскажите как выявить?

Комментарии

Аватар пользователя Bonefacei Bonefacei 1 июля 2010 в 1:42

FORTIS wrote:
Стоит nginx (фронт) + apache + eaccelerator + mysql

Некоторые страницы сайта под админом загружаются по 50 секунд, причем в первый раз страница отдается за 50 секунд, во второй за 2, в обоих случаях devel показывает одинаковое количество запросов Executed 380 queries in 1788.54 milliseconds. Но если время выполнения запросов 1788.54 milliseconds (то есть дело не в запросах и настройке базы) тогда на что тратятся остальные почти 48 секунд? Подскажите как выявить?

такая же проблема

Аватар пользователя Sinkora Sinkora 2 июля 2010 в 1:50

"Sinkora" wrote:
"FORTIS" wrote:
Executed 380 queries in 1788.54 milliseconds

О, ужас...

"<a href="mailto:volocuga@drupal.org">volocuga@drupal.org</a>" wrote:
Разве это много? Нормально вполне для Друпала

Вы что? Что значит нормально? 380 - что такое можно 380 раз запрашивать? 38 - это еще более-менее.
1788.54 milliseconds - вообще ужас!

"Executed 40 queries in 5.82 milliseconds, Executed 37 queries in 7.32 milliseconds. " - Сейчас у меня на главной страничке и на страничке ленты блогов, и это все равно много. Еще многое не оптимизировано (акселератор пока отсутствует). Вообще, для обычного сайта достаточно не более 2-3-х простых запросов к базе для генерации одной странички. Если сайт навороченный, то, конечно, больше. Но 380 - это жестоко, честное слово.

Кстати, сам Друпал не очень много запросов делает. Избыток запросов - это следствие использования "некошерных" модулей.

Аватар пользователя Sinkora Sinkora 2 июля 2010 в 3:18

"FORTIS" wrote:
использование не кошерных модулей - экономия бюджета и своего времени =)

Как раз наоборот. Проще один раз сделать нормальный модуль, чем юзать чужой, в котором много лишнего кода. А какая экономия от некошерных модулей? Из-за них тратится куча времени и нервов на поиск багов. А также хостинг дороже в итоге.

Причем самая большая проблема при использовании сторонних модулей - это их абсолютная несовместимость для сложных проектов. На серьезных сайтах каждый модуль должен полностью учитывать особенности всех остальных модулей. Т.е. разработчик должен знать, как выглядит архитектура его приложения, иначе неизбежна избыточность в лишних расходах ресурсов.

Сравните "Executed 37 queries in 7.32 milliseconds" и "380 queries in 1788.54 milliseconds" - можно сделать вывод, что в первом имеем выигрыш в 244 раза, по сравнению со вторым примером. Т.е. если мой сайт будет работать на недорогом VPS, то ваш (при одинаковых нагрузках), потребует на 2 порядка более мощный сервер. Так? Вот вам и экономия бюджета. Smile

Аватар пользователя FORTIS FORTIS 2 июля 2010 в 10:51

а функционал вашего сайта?)
я не спорю в чем-то вы и правы, но свой модуль если его не раздувать - скорей всего придется каждый раз затачивать под новый проект

Аватар пользователя Sinkora Sinkora 3 июля 2010 в 12:51

"FORTIS" wrote:
а функционал вашего сайта?)

Нишевая соц. сеть, которая постоянно развивается. На сайте активная публикация статей (с картинками) и много комментариев. Рейтинги. И всякие "штучки"...

"FORTIS" wrote:
я не спорю в чем-то вы и правы, но свой модуль если его не раздувать - скорей всего придется каждый раз затачивать под новый проект

Так и любой сторонний модуль нужно подтачивать под новый проект. Но свой модуль проще обслуживать.

У меня на сайте из сторонних модулей: devel, ImageCache (хотя хочу сделать свое решение, но нужно время), CAPTCHA (тут проще взять готовое решение), и еще пара-тройка мелочей, которые сегодня-завтра будут объединены мной в один модуль.

Да, работает еще cck, но его точно уберу со временем.

Аватар пользователя vgoodvin vgoodvin 4 июля 2010 в 14:52

В этом наверно и прелесть друпала. Кто-то рассматривает его как CMS, кто-то как CMS/CMF, а кто-то чисто как фреймворк.