ТОРМОЗА

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

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 10:50

Приветствую всех друпаловодов. Господа я в шоке. Либо я туплю конкретно, либо что-то тут нетак. Ситуация следующего плана:
Разработкой на друпал занимался раньше, но оф. проектов небыло, только изучал. Сейчас возникла проблема, написать коммерческий сайт - интернет магазин. Решил строить на друпале, так как в свое время он довольно хорошо запал мне в душу в отличии от остальных мегамонстров навроде wordpress и joomla. Сам по профессии и натуре программист, поэтому мой выбор друпал. НО! Есть ноут на котором разрабатываю софт. Проц - AMD 2-х ядерный. Частоту не помню. Памяти 4GB. Стоят Apache 2.2+MySQL+ngnix. Есть сайт. С лок. 1 пользователь - он-же зарегистрированный. Скорость открытия главной страницы 1-2 секунды. Первый байт отдается системой только после того как страница сделана. Вчера-сегодня рыл интернет. Нашел много сайтов, с огромной загрузкой на которых стоит друпал. Блин. Нажал ссылку, подождал 1-х секунд, страница открылась...
Сижу и чешу репу. Если на 1 пользователе такая задержка. Что будет если сайт будут смотреть 100 зарегистрированных пользователей? Это-же абзац будет. Подскажите если не жалко:
1). Если у Вас есть высокопосещаемый сайт, где много зарегистрированных пользователей - требования к серверу, например - сервер с проц XXX памяти YYY тянет одновременно ZZZ пользователей. Время формирования страниц не более KKK сек.
2). Вообще. Реально сделать на друпале сайт на котором очень много (1000) будет ЗАРЕГИСТРИРОВАННЫХ пользователей. Надеюсь это не потребует всего оборудования vkontakte.ru или facebook.ru?

Подведя итоги. Друпал это вещь. Написано под него очень много всего. НО! Либо я дурак который незнает как заставить егло работать быстро, либо я ничего не понимаю...

Комментарии

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 10:58

Azerot wrote:
Последняя строчка. Заметьте, вы сами это сказали! :)

Угу. Вчера просматривал сайты пользователей этого сайта - hr-portal.ru и 1nsk.ru. Посещаемость у сайтов дикая. Зарегился на них. В онлайне не более 10-20 пользователей. Мне страницы отдаются с задержкой от 2-х секунд. Что будет если на них в онлайне будет 100 пользователей сидеть? Причем как я понял, читая топики владельца hr-portal, сайт крутится на довольно неслабом оборудовании.

Вопросы я задаю эти из-за того, что начинаю сомневаться, а вытянет ли дрюп мой проект. Сейчас есть VPS 600мегагерц проц, 512 оперативки. Совсем уныл когда увидел скорость на своем ноуте...

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 10:52

И вообще. Например. Делаем на друпале форум. Если сравнить PHPbb или FluxBB и друпал форум. Какие требования, и что надо сделать чтобу друп. форум работал так-же быстро как PHPbb или FluxBB?

Аватар пользователя Erly Erly 15 декабря 2010 в 10:56

Не боись, всё нормуль. У меня на локалхосте друпал тоже виснет, а на хостинге - нормально. Залей сайт на хостинг и посмотри как он там будет работать.

Аватар пользователя glu2006 glu2006 15 декабря 2010 в 11:02

По форуму вы ничего не сделаете, вы сможете только приблизится по скорости и может быть по внешнему виду.
PHPbb или FluxBB это узкозаточенные движки, если претесь от них, то сделайте на базе PHPbb или FluxBB интернет магазин ;).
Аналогично и плакаться насчет скорости в друпале, скорость друпала это плата за его универсальность, его можно и нужно ускорять и оптимизировать, но обогнать в скорости узкозаточенную платформу для интернет магазина или чего-то другого друпал не сможет. Это пусть горькая, но правда.

По вашему посту п.1 - погуглите и посмотрите Smile
п.2 - Реально.

Я уже неоднократно говорил и буду говорить не юзайте связку друпал + уберкарт если вам нужен только магазин с очень большим количеством товаров и посещаемостью, достаточно классного свободного двигла для этих целей, ну или платного ;).

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 11:19

Dan wrote:
"vitaliy1978" wrote:
Совсем уныл когда увидел скорость на своем ноуте...

Какая ОСь?

Linux ubuntu 10-я. Параметры кеширования запросов MySQL установлены. Запросы кеширует. nginx отдает статику. Тоже проверил. PHP работает как модуль apache. Пробовал FastCGI, без изменения. База данных в InnoDB. Стоит eaccelerator. Просто незнаю что делать. С одной стороны "top" во время формирования страницы выдает загруженность не более 2-х %, с другой стороны долго. Тестил сайт онлайновыми сервисами, которые выдают время в зависимости от нагрузки. На 25 пользователях время равнялось 8! секундам.

Аватар пользователя penexe penexe 15 декабря 2010 в 13:00

vitaliy1978 wrote:
penexe wrote:
"vitaliy1978" wrote:
1nsk.ru

это не друпал

Вроде как дрюп. И автор периодически здесь пишет...

ссылочкой не поделитесь?

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 11:25

Сумосбродная конечно идея. Просто глядя на такую картину подумалось. Дрюп-у нужно 0,6 секунд на формирование страницы. Как бы сделать так, чтобы это время пользователи качали картинки/скрипты текущей страницы. А то время отдачи первого байта практически совпадает со временем когда друпал сделает страницу. Это во первых. Во вторых. Возможно конечно я чего-то незнаю. Но например, есть на сайте блок "последние комментарии на форуме". Как сделать его КЭШ вечным, и удалять только когда будет введено новое сообщение?

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 12:11

RxB wrote:
"vitaliy1978" wrote:
What is it? :-D

Экономия на спичках в надежде на 10^500 онлайн

Планируется использование модуля аналогичного ubercart-marketplace. Выходить на покупку дорогого хостинга/своего сервера при 50-ти посетителях смысла не вижу. Но и эти 50 VPS невытягивает, что обидно. Думаю все согласятся, что пользователям некомфортно будет ждать 10 секунд загрузки страницы.

P.S. Просто на своем персональном сайте сейчас использую ngcms. 12 запросов к БД и генерится любая страница. Ссылку нажал, тут-же получил страницу. В друпале этого нет. Приходится ждать 1-2 секунда если я один на сайте.

Аватар пользователя Geldora Geldora 15 декабря 2010 в 12:21

"vitaliy1978" wrote:
Как бы сделать так, чтобы это время пользователи качали картинки/скрипты текущей страницы

Смотрите модули а-ля cdn. Тем более что вы видимо, программист, и сможете там все настроить (я не могу, к примеру)

"vitaliy1978" wrote:
есть на сайте блок "последние комментарии на форуме". Как сделать его КЭШ вечным, и удалять только когда будет введено новое сообщение?

Ставьте вьювс, и если он уже стоит, смотрите настройки кэша. Как минимум ставьте встроенный кэш вьювса + есть модуль контент_кэш, только он у меня так и не заработал как нужно было.

Аватар пользователя Crea Crea 15 декабря 2010 в 12:24

Quote:
Что будет если сайт будут смотреть 100 зарегистрированных пользователей?

Откуда у вас 100 зарегистрированных в интернет-магазине ? Если вы перед покупкой собираетесь принуждать к регистрации - так это значит вы сами себе злобный буратино Smile

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 12:41

Crea wrote:
Quote:
Что будет если сайт будут смотреть 100 зарегистрированных пользователей?

Откуда у вас 100 зарегистрированных в интернет-магазине ? Если вы перед покупкой собираетесь принуждать к регистрации - так это значит вы сами себе злобный буратино :)

При регистрации флаг - "запомнить меня. Через куки сайт будет узнавать что это зарегенный пользователь и давать ему возможность комментировать/писать в форуме. Кто знает когда они будут на сайте?

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 15 декабря 2010 в 12:25

"vitaliy1978" wrote:
Но и эти 50 VPS невытягивает, что обидно.

Вам обидно, а хостеру профит, VPS это грандиозный маркетинг-развод, не более того.

Полсекунды на генерацию это нормально. А сейчас вы не разобравшись в ситуации начинаете типичную premature optimization. Если на одного посетителя страница грузится 1 секунду, то это совсем не говорит о том, что при двух посетителях эта же страница будет грузится 2 секунды, а при трёх - 6 секунд. Я, наверно, вас удивлю, но при маленькой посещаемости вообще толку от ваших отптимизай типа nGinx да акселлератора нету.

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 12:43

RxB wrote:
"vitaliy1978" wrote:
Но и эти 50 VPS невытягивает, что обидно.

Вам обидно, а хостеру профит, VPS это грандиозный маркетинг-развод, не более того.

Полсекунды на генерацию это нормально. А сейчас вы не разобравшись в ситуации начинаете типичную premature optimization. Если на одного посетителя страница грузится 1 секунду, то это совсем не говорит о том, что при двух посетителях эта же страница будет грузится 2 секунды, а при трёх - 6 секунд. Я, наверно, вас удивлю, но при маленькой посещаемости вообще толку от ваших отптимизай типа nGinx да акселлератора нету.


Я тестил через онлайн тестеры. На 25 онлайн пользователях активно пользующихся сайтом время отдачи страницы они показали 8 секунд

Аватар пользователя Dan Dan 15 декабря 2010 в 13:02

"vitaliy1978" wrote:
Linux ubuntu 10-я. Параметры кеширования запросов MySQL установлены. Запросы кеширует. nginx отдает статику. Тоже проверил. PHP работает как модуль apache. Пробовал FastCGI, без изменения. База данных в InnoDB. Стоит eaccelerator. Просто незнаю что делать. С одной стороны "top" во время формирования страницы выдает загруженность не более 2-х %, с другой стороны долго. Тестил сайт онлайновыми сервисами, которые выдают время в зависимости от нагрузки. На 25 пользователях время равнялось 8! секундам.

Уберите всю эту херню и смотрите узкое место в чистой системе. Апач, мускул и php. Всё! Остальное прикручивается только после диагноза.

Аватар пользователя Dan Dan 15 декабря 2010 в 13:03

Вообще ваши метания похожи на аналогию:
"Добираюсь с работы до дома очень долго - целый час, вот думаю, как бы это дело ускорить? В кроссовки вложил новые стельки, чтобы быстрее ходить, купил более аэродинамичную кепку, дабы не тормозила во время ходьбы, но НЕ ПОМОГАЕТ!"
А может надо учесть, что из этого часа 50 минут тратиться на стояние в метро и стельки и кепка не помогут?

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 13:17

Dan wrote:
Вообще ваши метания похожи на аналогию:
"Добираюсь с работы до дома очень долго - целый час, вот думаю, как бы это дело ускорить? В кроссовки вложил новые стельки, чтобы быстрее ходить, купил более аэродинамичную кепку, дабы не тормозила во время ходьбы, но НЕ ПОМОГАЕТ!"
А может надо учесть, что из этого часа 50 минут тратиться на стояние в метро и стельки и кепка не помогут?

Нет. Вы неправы. Мои метания это только попытка понять, какую нагрузку выдержит мой сайт при отключенном boost и при зарегистрированных пользователях. Сейчас просто определяюсь, либо почти все писать с нуля на ngcms, либо строить на друпал. В планах форум+marketplace будут drupal-овскими. Активное пользования сайтом на уровне 2000 в начале. Потом больше, но и монетиация потом попрет. Есть хостинг. Как я уже писал ngnix+mysql+_apache 2.2+512 оперативки + канал 10Мб. Немогу понять. Сколько дрюп нормально будет держать пользователей на этом железе?

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 13:27

vitaliy1978 wrote:
Dan wrote:
Вообще ваши метания похожи на аналогию:
"Добираюсь с работы до дома очень долго - целый час, вот думаю, как бы это дело ускорить? В кроссовки вложил новые стельки, чтобы быстрее ходить, купил более аэродинамичную кепку, дабы не тормозила во время ходьбы, но НЕ ПОМОГАЕТ!"
А может надо учесть, что из этого часа 50 минут тратиться на стояние в метро и стельки и кепка не помогут?

Нет. Вы неправы. Мои метания это только попытка понять, какую нагрузку выдержит мой сайт при отключенном boost и при зарегистрированных пользователях. Сейчас просто определяюсь, либо почти все писать с нуля на ngcms, либо строить на друпал. В планах форум+marketplace будут drupal-овскими. Активное пользования сайтом на уровне 2000 в начале. Потом больше, но и монетиация потом попрет. Есть хостинг. Как я уже писал ngnix+mysql+_apache 2.2+512 оперативки + канал 10Мб. Немогу понять. Сколько дрюп нормально будет держать пользователей на этом железе?

Стельки, кепка... А что тогда тормозит? PHP проц грузит на 2 процента вроде как по "top". ФС летает. От канала отклик отличный. Что тормозит тогда???

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 13:22

Что можно сделать кроме сделанного для ускорения CMS? Если не жалко, владельцы больших проектов на друпал, поделитесь своими настройками/конфигами

Аватар пользователя Shift-Web Shift-Web 15 декабря 2010 в 14:21

"Dan" wrote:
Вообще ваши метания похожи на аналогию:
"Добираюсь с работы до дома очень долго - целый час, вот думаю, как бы это дело ускорить? В кроссовки вложил новые стельки, чтобы быстрее ходить, купил более аэродинамичную кепку, дабы не тормозила во время ходьбы, но НЕ ПОМОГАЕТ!"
А может надо учесть, что из этого часа 50 минут тратиться на стояние в метро и стельки и кепка не помогут?

Acute

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 14:25

Блин. Наприемр сайт моей семьи. Написан на NG. zavaliy.ru. Летает. Правда тормозить в последнее время начал, когда фотки на GOOGLE CDN перевел. Скоро верну обратно. Сейчас перевел его на дрюп. Сравните скорость... Из модулей подключены стандартные - color и FiveStar.... На локалхосте с NG сайт открывается мгновенно, на drupal 1 сек...

P.S. Перевел на drupal на локлхосте. В сеть загружу в течении недели... Sorry...

Аватар пользователя q2_faith q2_faith 15 декабря 2010 в 14:25

установите модуль devel и посмотрите что тормозит
а вообще, по моему странные оба вопроса
не видя сайта как можно оценить его?)

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 14:34

q2_faith wrote:
установите модуль devel и посмотрите что тормозит
а вообще, по моему странные оба вопроса
не видя сайта как можно оценить его?)

Девел стоит напостоянку. Я не ламер если что... Время запросов около 500-600 мс. Но страница отдается 1-2 с Я так понимаю. При поступлении запроса. Вначале дрюп делает страницу. Потом начинает ее отдавать. Потом браузер видит какие картинки можно параллельно гразить и грузит их... НО! Дрюп делает не более 90 запросов к БД. Смотрел. Некоторые лишние. Но я немогу указать на какой странице каким модулям грузиться. Или могу?!? Убрал Locale. Весь перевод пересадил в settings.php. Толку почти ноль.
И тем не сенее на 1-м пользователе имеем 2 сек на страницу... Sad

И опаять же... SQL+время генерации страницы у меня - X+Y=1100мс. А страница пиходит за 2!

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 14:48

Опять же! Может я что то непонимаю. Но у hr-portal некоторые страницы генерятся почти мгновенно, несмотря что я зарегистрированный пользователь. В шапке пишется именно мое имя... Как это сделано?!? явно не статикой...

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 14:57

Залил личный сайт. Без темы. На друпале. Пока просадок нет... Посмотрим... Это проект с посещаемостьб 1-2 пользователя в неделю... Sad Друп круто!!!

Аватар пользователя Dan Dan 15 декабря 2010 в 17:09

"vitaliy1978" wrote:
Нет. Вы неправы. Мои метания это только попытка понять, какую нагрузку выдержит мой сайт при отключенном boost и при зарегистрированных пользователях

Так отключите буст и нагрузите проверками с куками!
Я не понимаю зачем оптимизировать всё подряд, не пытаясь разобраться в чём трабл. Зачем вы установили nginx? У вас плохо отдаётся статика? Зачем нужен eaccelerator? Большая потеря на рендере? Я совсем не против nginx, eaccelerator, sphinx и пр. и пр., но не вижу смысла в установке всего это добра вслепую.

Аватар пользователя vitaliy1978 vitaliy1978 15 декабря 2010 в 21:12

Dan wrote:
"vitaliy1978" wrote:
Нет. Вы неправы. Мои метания это только попытка понять, какую нагрузку выдержит мой сайт при отключенном boost и при зарегистрированных пользователях

Так отключите буст и нагрузите проверками с куками!
Я не понимаю зачем оптимизировать всё подряд, не пытаясь разобраться в чём трабл. Зачем вы установили nginx? У вас плохо отдаётся статика? Зачем нужен eaccelerator? Большая потеря на рендере? Я совсем не против nginx, eaccelerator, sphinx и пр. и пр., но не вижу смысла в установке всего это добра вслепую.

Eaccelerator потому что надо для быстрого рендеренга PHP. nginx чтобы разгрузить apache лишними запросами. Sphinx не ставил, но в планах есть. Еще раз пишу. Я пытаюсь понять, сколько онлайн пользователей одновременно пользующихся сайтом вытянет тот хостинг что есть у меня. Я не понимаю, или незнаю, зачем в друпале есть модули Соц. сетей, если он максимум 20 онлайн пользователей неможет вытянуть?!?

Аватар пользователя andribas@drupal.org andribas@drupal.org 15 декабря 2010 в 21:41

Я для оценки проводил такой тест:
сначала написал html "Hello world"
потом php print "Hello world"
тормоза появляются уже на этом этапе
потом сравнил производительность nginx + php-fpm и apache + mod_php
а также сервер http, написанный на C epoll
разницы между программой на C и nginx нет, а индеец давал уже на этом этапе задержку.
Если Вас интересует именно 1к пользователей онлайн, то Вам готовое решение на друпал вряд ли подойдет.
С этой проблемой я столкнулся пару лет назад, когда искал движок под популярные тогда скандинавские аукционы. Писали их всякие индусы и продавали за 100$, но архитектура была такова, что такой скрипт - движок выдерживал нагрузку максимум 100 пользователей, дальше были тормоза.
Чтобы реализовать проект сравнимый с соц. сетями, на которые Вы замахиваетесь, без увеличения аппаратной базы - мне самому не нравится идея, если апач тормозит - ставь второй сервер, то возможно, Вам стоит погуглить на предмет C10k kegel - там еще в начале века описывают эту проблему.
Пример такой проблемы - подсказка строки поиска на гугле (яндексе) - если Вам действительно это надо, сначала посчитайте, сколько это будет стоить.
И то, что Вы сначала оцениваете производительность, а потом думаете, реализовывать или нет, я считаю правильным подходом.
Возможно, в Вашем случае, все же можно оптимизировать / кешировать запрос к странице, и оптимизацию надо начать с помещения кода php в память, потом mysql настроить как надо, возможно подкрутить sysctl, и посмотреть, что наиболее затратно.
Может быть, что-то после этого можно будет закешировать.
Идеальным вариантом, конечно, была бы сборка наподобие SSI на стороне сервера именно тех блоков, которые не изменились, но такие решения, как я читал, есть на mail.ru и т.д., но не в открытом доступе.

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

Аватар пользователя vitaliy1978 vitaliy1978 16 декабря 2010 в 6:16

<a href="mailto:andribas@drupal.org">andribas@drupal.org</a> wrote:
Вам стоит погуглить на предмет C10k kegel - там еще в начале века описывают эту проблему.

Почитал. Интересно. Кстати, из этой же проблемы почитал про работу nginx. Был приятно удивлен, что это разработка сотрудника rambler-a. Сегодня буду тюнить сервер. Как минимум попробую весь php код в память забросить. Посмотрю что это даст. Думаю насчет ssi. Но пока не придумал как его нормально прикручивать.

Аватар пользователя volocuga@drupal.org volocuga@drupal.org 15 декабря 2010 в 23:28

"vitaliy1978" wrote:
Что тормозит тогда???

Очевидно, что тормозит:

1) Мускуль. Поставьте девел и посмотрите кол-во запросов Smile

2) Сам PHP. В Друпале система хуков, значит многочисленные перехваты. Посмотрите сколько весит дистро приличного по функционалу сайта. То же можно сделать с количеством кода в несколько раз меньшим. НО. Малейшее изменение - лезем править врукопашную

"vitaliy1978" wrote:
Блин... На хостинге сайт летает...

Дык на серверном железе+главное, на голой оси, без плюшек вроде графики

Аватар пользователя Dan Dan 16 декабря 2010 в 5:34

"vitaliy1978" wrote:
Я пытаюсь понять, сколько онлайн пользователей одновременно пользующихся сайтом вытянет тот хостинг что есть у меня. Я не понимаю, или незнаю, зачем в друпале есть модули Соц. сетей, если он максимум 20 онлайн пользователей неможет вытянуть?!?

Вы не пытаетесь понять, вы пытаетесь оптимизировать не поняв. Разложите по полочкам: сколько занимают запросы, сколько рендер скрипта, сколько загрузка страницы со всеми потрохами, сколько рендер страницы в браузере. Вот тогда и разговор по существу будет а не крики: "не выдержит 20 пользователей онлайн"

"vitaliy1978" wrote:
Eaccelerator потому что надо для быстрого рендеренга PHP.

Я знаю для чего используют Eaccelerator, я спрашивал про другое.

"vitaliy1978" wrote:
nginx чтобы разгрузить apache лишними запросами.

Я знаю для чего используют nginx, я спрашивал про другое.

Ещё раз (такое впечатление, что вы меня совсем не понимаете): разберитесь, что у вас тормозит! Не надо ставить кучу софта и оптимизировать всё подряд!

"vitaliy1978" wrote:
Блин... На хостинге сайт летает...

То есть мы пришли к тому, что дело не в друпале и не в железе. Ну хоть что-то...

Аватар пользователя vitaliy1978 vitaliy1978 16 декабря 2010 в 6:26

kyky wrote:
Еще Дональд Кнут говорил, что преждевременная оптимизация — залог провала проекта.

Угу. Напишите на стандартных модулях друпа vkontakte.ru. И запустите проект. А потом по ходу пьесы, когда у пользователей страница по минуте будет грузиться беритесь за оптимизацию.
Писать можно на многом и по разному. Можно на друпе (многое уже написано), можно с нуля на php или еще лучше на C (максимум оптимизации под конкретный ресурс). Сложно рабочую лошадку менять если проект уже работает...

Аватар пользователя kyky kyky 16 декабря 2010 в 6:55

"vitaliy1978" wrote:
Напишите на стандартных модулях друпа vkontakte.ru.

Не передергивайте. Архитектура Друпала для вконтакта не подходит.
И да будет вам известно, что движки социальных сервисов, таких, как твиттер, фейсбук, вконтакте, находятся в постоянном допиливании, о чем сообщают сами разработчики.
Так что не надейтесь, что поставил и забыл.

Аватар пользователя vitaliy1978 vitaliy1978 16 декабря 2010 в 7:12

kyky wrote:
"vitaliy1978" wrote:
Напишите на стандартных модулях друпа vkontakte.ru.

Не передергивайте. Архитектура Друпала для вконтакта не подходит.
И да будет вам известно, что движки социальных сервисов, таких, как твиттер, фейсбук, вконтакте, находятся в постоянном допиливании, о чем сообщают сами разработчики.
Так что не надейтесь, что поставил и забыл.

Я привожу в примеры соц. сети исключительно из-за того, что под друпал есть модули, которые позволяют это реализовать. Раз написали эти модули, наверное не просто так и наверное не из-за того, что друпал сильно грузит сервера...

Аватар пользователя kyky kyky 16 декабря 2010 в 6:57

"vitaliy1978" wrote:
Сложно рабочую лошадку менять если проект уже работает...

Фейсбук начинал с голого пыхыпе, теперь его архитектура частично работает на Питоне и Эрланге.
И ничего, живут еще.

Аватар пользователя vitaliy1978 vitaliy1978 16 декабря 2010 в 7:10

kyky wrote:
"vitaliy1978" wrote:
Сложно рабочую лошадку менять если проект уже работает...

Фейсбук начинал с голого пыхыпе, теперь его архитектура частично работает на Питоне и Эрланге.
И ничего, живут еще.

Начинали с голого PHP написанного специализированно для facebook. Вроде с эрлпнгом у них все заглохло. Сейчас вроде используют HIPHOP-PHP. Трансляция PHP->C. Эрлангом в свое время интересовался. Интересный язык, но мне показался слишком навернутым и несильно гибким.

Аватар пользователя kyky kyky 16 декабря 2010 в 7:22

"vitaliy1978" wrote:
под друпал есть модули, которые позволяют это реализовать

Вы не видите общей картины. Если есть модуль для дружбы, это не значит, что можно сделать вконтакте. Целое больще суммы частей. Набор всех модулей не даст вам вконтакте. Странно, почему вам это сразу не понятно.

Аватар пользователя vitaliy1978 vitaliy1978 16 декабря 2010 в 7:28

kyky wrote:
"vitaliy1978" wrote:
под друпал есть модули, которые позволяют это реализовать

Вы не видите общей картины. Если есть модуль для дружбы, это не значит, что можно сделать вконтакте. Целое больще суммы частей. Набор всех модулей не даст вам вконтакте. Странно, почему вам это сразу не понятно.

Мне это понятно. Мне пока непонятно то, какую нагрузку выдержит сайт сделанный мной на друпале, если в основном пользователи будут не анонимы. Либо как оптимизировать все, чтобы для незарегистрированных пользователей так-же быстро формировались страницы как для анонимов. Authcache особого прироста не дал. Например. Есть на сайте блок погоды. Обновляется 4 раза в день. Как сделать так, чтобы для всех (анонимов и зарегенных) пользователей он брался из кеша, а кеш перестраивался ТОЛЬКО моим модулем? Друп всегда как я заметил вызывает хуки модуля, которые его повторно переформируют.

Аватар пользователя vitaliy1978 vitaliy1978 16 декабря 2010 в 7:29

vitaliy1978 wrote:
kyky wrote:
"vitaliy1978" wrote:
под друпал есть модули, которые позволяют это реализовать

Вы не видите общей картины. Если есть модуль для дружбы, это не значит, что можно сделать вконтакте. Целое больще суммы частей. Набор всех модулей не даст вам вконтакте. Странно, почему вам это сразу не понятно.

Мне это понятно. Мне пока непонятно то, какую нагрузку выдержит сайт сделанный мной на друпале, если в основном пользователи будут не анонимы. Либо как оптимизировать все, чтобы для зарегистрированных пользователей так-же быстро формировались страницы как для анонимов. Authcache особого прироста не дал. Например. Есть на сайте блок погоды. Обновляется 4 раза в день. Как сделать так, чтобы для всех (анонимов и зарегенных) пользователей он брался из кеша, а кеш перестраивался ТОЛЬКО моим модулем? Друп всегда как я заметил вызывает хуки модуля, которые его повторно переформируют.

Аватар пользователя Crea Crea 16 декабря 2010 в 7:30

На самом деле, можно Вконтакте на Друпале сделать.
Нужно дождаться квантовых компьютеров, и тогда весь вконтакте сможет работать на основе Друпала на шаред хостинге.

Аватар пользователя vitaliy1978 vitaliy1978 16 декабря 2010 в 7:44

Блин. Такое впечатление что Drupal идет по дорожке Microsoft и 1С. Та-же функциональность но на более мощьных компах. Оптимизации вообще ноль. У меня главная страница сайта делает 250 запросов. То-же на своем коде - 9!

Аватар пользователя kyky kyky 16 декабря 2010 в 7:53

"vitaliy1978" wrote:
Мне пока непонятно то, какую нагрузку выдержит сайт сделанный мной на друпале, если в основном пользователи будут не анонимы.

Понимаете, это настолько зависит от параметров хостинга, что и говорить нечего.
Вы просто делайте, и всё. Был бы сайт — а хостинг найдется.
Наконец, еще одна ошибка — полагать, что пользователи уйдут с сайта при первом же падении. Если сервис нужный, пользователи никуда не денутся. Сколько раз хабр падал? Сколько раз твиттер уходил в даун? И что, все от них ушли?

Аватар пользователя andribas@drupal.org andribas@drupal.org 16 декабря 2010 в 9:05

"vitaliy1978" wrote:
У меня главная страница сайта делает 250 запросов. То-же на своем коде - 9!

С mysql у друпала есть проблемы, но не те, которые Вы описываете. Много запросов еще не означает, что будут тормоза, т.к. они почти все идут из кеша. Чтобы более точно оценить нагрузку, приведите хоть один пример загрузки страницы - какой запрос самый дорогой к mysql, сколько генерируется страница. На локалхост можно поставить xdebug, если проблема в коде.
После этого можно определять "узкие" места. А так разговор получается беспредметный.

Аватар пользователя theurs theurs 20 мая 2011 в 14:34

<a href="mailto:andribas@drupal.org">andribas@drupal.org</a> wrote:
"vitaliy1978" wrote:
У меня главная страница сайта делает 250 запросов. То-же на своем коде - 9!

С mysql у друпала есть проблемы, но не те, которые Вы описываете. Много запросов еще не означает, что будут тормоза, т.к. они почти все идут из кеша. Чтобы более точно оценить нагрузку, приведите хоть один пример загрузки страницы - какой запрос самый дорогой к mysql, сколько генерируется страница. На локалхост можно поставить xdebug, если проблема в коде.
После этого можно определять "узкие" места. А так разговор получается беспредметный.

а если эти много запросов умножить на много пользователей? скажем 200 запросов для одного посетителя страничка генерируется за 0.2с, для 100 посетителей будет уже 20с

речь как бе о пустом тестовом сайте на друпале с нагенерированым контентом, никаких модулей кроме стандартных да и тех немного

Аватар пользователя Crea Crea 20 мая 2011 в 17:04

theurs wrote:

а если эти много запросов умножить на много пользователей? скажем 200 запросов для одного посетителя страничка генерируется за 0.2с, для 100 посетителей будет уже 20с

у вас наверное и 9 женщин ребенка за 1 месяц родить могут

Аватар пользователя glu2006 glu2006 16 декабря 2010 в 9:50

Уж сколько раз поднималась тема производительности, вы прежде чем писать о 20 юзерах почитали бы тут на форуме про это.

Пример:
1. Есть электромясорубка.
2. Есть кухонный комбайн с функцией электромясорубки.

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

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

Аватар пользователя Sinkora Sinkora 7 марта 2011 в 23:44

"Crea" wrote:
О, очередной пациент. Вам в палату к Синкоре.
PS вы буйный или нет ?

Когда вы уже все успокоитесь?:)

Аватар пользователя glu2006 glu2006 8 марта 2011 в 7:48

Sinkora wrote:
Когда вы уже все успокоитесь?:)

Так все уже успокоились еще 3 месяца назад Smile с возвращением и пробуждением. Ты наверное как медведь в зимнюю спячку впадал ;).

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 20 мая 2011 в 15:10

"theurs" wrote:
а если эти много запросов умножить на много пользователей? скажем 200 запросов для одного посетителя страничка генерируется за 0.2с, для 100 посетителей будет уже 20с

это вы где такой математике научились?

Аватар пользователя theurs theurs 21 мая 2011 в 0:23

RxB wrote:
"theurs" wrote:
а если эти много запросов умножить на много пользователей? скажем 200 запросов для одного посетителя страничка генерируется за 0.2с, для 100 посетителей будет уже 20с

это вы где такой математике научились?

какие у вас расчеты? или хотя бы практика. у меня выделенный сервер с 4гб памяти и кореквадом падает от 200 залогиненных пользователей, профайлер друпала показывает что главная страница для юзера генерируется за 0.3с делая при этом 300 запросов к бд и потребляя 40мб памяти

Аватар пользователя q2_faith q2_faith 21 мая 2011 в 9:36

"theurs" wrote:
у меня выделенный сервер с 4гб памяти и кореквадом падает от 200 залогиненных пользователей

опять улыбнуло)

Аватар пользователя Dan Dan 21 мая 2011 в 19:23

"theurs" wrote:
у меня выделенный сервер с 4гб памяти и кореквадом падает от 200 залогиненных пользователей

200 в сутки или в секунду?

Аватар пользователя andribas@drupal.org andribas@drupal.org 22 мая 2011 в 10:12

"theurs" wrote:
за 10 минут. мускул выжирает всю память и тонет в свопе.

По крайней мере Вы локализовали проблему. скорее всего у Вас запросы где-то кривые, без индексов, или мускул неправильно настроен. Здесь где-то есть материал, как выявить проблему и решить.

Аватар пользователя petrovnn petrovnn 26 мая 2011 в 20:01

"theurs" wrote:
главная страница для юзера генерируется за 0.3с делая при этом 300 запросов к бд и потребляя 40мб памяти

У меня главная страница для залогиненного юзера генерится за 200 мс (это 0.2с, или 0.02с?), делая при этом 28 запросов и съедая 16 мегабайт. Возможно у вас на главной списки материалов, где для каждого материала вызывается node_load()? Покажите сайт. Есть несколько приемов, позволяющих в разы существенно уменьшить количество запросов к БД и уменьшить количество съедаемой памяти.

Кроме того, на моем хостинге идеально настроен мускул, наверное это тоже нельзя списывать со счетов, и еще у меня отключен русский интерфейс (locale), но даже с включенным локалем, строки для перевода можно выносить в settings.php, ведь каждая строка для перевода - запрос к базе.

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