Оптимальный набор ПО для Drupal 6/7

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

Аватар пользователя Wolf-alone Wolf-alone 10 июля 2011 в 4:52

Доброго времени суток! Подскажите пожалуйста, какой набор ПО является наиболее оптимальный для функционирования на сервере Drupal?

Например, какой веб-сервер лучше использовать, Apache или Lightpd? Какое ещё ПО необходимо установить для максимальной производительности? Какую БД лучше использовать?

Комментарии

Аватар пользователя Wolf-alone Wolf-alone 10 июля 2011 в 11:55

"xxandeadxx" wrote:
http://drupal.org/requirements[/quote]
- "Веб сервер, например Apache"
- "БД, например MySQL"

Это всё понятно. Но, хотелось бы узнать, какой набор ПО под Linux является наиболее оптимальным для того, что бы достичь максимальной производительности Drupal 6/7?

Аватар пользователя Crea Crea 10 июля 2011 в 12:17

Универсальных рецептов нет. Начните с простого, с типовой конфигурации (apache и т.д.). Когда разберетесь, тогда и будете заниматься улучшательством

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 10 июля 2011 в 16:13

argon wrote:
дэнвера обычно за гланды.. (т.е. почти всегда) хватает

Денвер -- это первый шаг к резиновой подруге визуал бэйсику.
Debian -- наш выбор!

Аватар пользователя marazmus marazmus 10 июля 2011 в 16:51

Для развертывания Друпала нет такого понятия - "оптимальный для Друпала". Зато есть понятие - "оптимальный для разработчика".

Простой пример: "Апач говно, все переходим на связку Nginx + PHP-FPM, это супер-оптимально!". Да, это круто, спору нет. Но 99% "перебежчиков" отвалятся на простом этапе переписывания правил .htaccess Друпала на систему правил Nginx. Не умеете этого делать? Добро пожаловать в стан любителей художественной грЁбли Biggrin

Еще примеры нужны? Куча их.

Суть проста - если вы разработчик-одиночка, используйте то, что умеете использовать. Фанат фряхи? Юзай фряху. Тру-дебианщег? ДебианИсь по полной! Biggrin Да хоть Денвер, извините за упоминание всуе Biggrin Че тут думать, делать надо, суп стынет!

Если вы работаете в команде, и у вас есть свой сысьодмин, тогда вас такие вопросы вообще не должны иметь в задние места. Работайте, нах, программируйте свои задачи, и не имейте мозги занятым людям! Biggrin

Аватар пользователя Wolf-alone Wolf-alone 10 июля 2011 в 23:07

"argon" wrote:
дэнвера обычно за гланды.. (т.е. почти всегда) хватает

К сожалению, возможности установить "дэнвер" у меня нет, т.к. работаю под Linux ubuntu/debian. Для "локальных проб" вполне хватает и стандартной связки apache2+php5.3+mysql5.1(5.5)

Все сервера работают под управлением Debian 5/6, поэтому, набор ПО интересует именно под Linux, а если совсем конкретно под Linux Debian 5/6.

"<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a>" wrote:
Debian -- наш выбор!

+1, мне тоже нравится эта ОС!

"marazmus" wrote:
Nginx + PHP-FPM

будет быстрее чем Apache2+php5?

*Минимальная конфигурация сервера:
Проц: Xeon E5645 2.40GHz x6
RAM: 8Gb
HDD: Raid-1 массив (марку не знаю)
Канал: 100Мбит/сек.

Есть ли смысл выбора оптимального набора ПО на такую машину? На сколько можно увеличить производительность? Если прирост будет менее 20% - то для меня это не принципиально.

"marazmus" wrote:
Если вы работаете в команде, и у вас есть свой сысьодмин

"сысодмын" это такой зверь, которому нужно поставить задачу. Что настроить и как. Команду "сделай всё зашибись" - он не понимает!

Аватар пользователя marazmus marazmus 11 июля 2011 в 8:57

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

Если вас интересует именно производительность, постановка вопросов и сами вопросы у вас должны быть совершенно другими. Например: на этом сервере будет крутиться Друпал с примерно 15000 нод, 2000 терминов таксономии, построенный на Views, с посещаемостью в пиках 10000 анонимов и 1000 зарегенных в сутки, причем юзеры буду активно заливать картинки (фотографии и прочее). Что надо сделать на сервере, чтобы это хозяйство туда поставить, и чтобы это все не сильно тормозило?

А когда уже начинаете решать задачу, понимаете, что особого выбора у вас тупо нет. На сайте будет много картинок, это значит - раздача большого количества статических файлов. Чтобы разгрузить Апач на этой задаче, перед Апачем ставят проксирующий сервер, Nginx в этой роли идеален. Вот у вас уже связка Nginx на фронте, Апач на бекенде. Сисадмину говорите "Сделай так, а не то сделаю тебе неоптимально!" Biggrin

Идем дальше. Сайт готов и в продакшене? Так какого хрена у вас PHP работает в режиме без opcode-акселератора? Включайте его, решений до пупа - APC, eaccelerator, XCache, Zend Optimizer. Оптимальненько? Сисдомин, ты где, не сбежал еще от нас? Biggrin

Далее смотрите, на чем собран ваш сайт на Друпале, в плане работы с сервером баз данных. На данное время Друпал фактически поддерживает MySQL, PostgreSQL и MS SQL Server. Причем с последними двумя без костылей и решения кучи проблем не обойтись, а последний вы на Debian и не поставите, в силу определенных причин Biggrin Так что если не хотите постоянного геморроя, ставите MySQL. Большой выбор? Оптимально? Ага, млин, пипец как оптимально, душа радуется оптимальности Biggrin

Друпал активно срет в БД на каждый чих, это значит постоянные блокировки таблиц. Это значит, что наиболее активно засераемые таблицы нужно перевести в InnoDB, раз уж у вас MySQL. Да и сам MySQL-сервер надо настроить по-человечески, с кешами под размер вашей памяти, с учетом настроек InnoDB, с нужными логами. Вот еще одна задача сисадмину, понятно какая? Причем MySQL нужно будет периодически мониторить на предмет затыков, медленных логов и прочего. При необходимости создавать индексы на нужные таблицы и сочетания полей в медленных запросах. У вас есть админ MySQL под рукой? Он оптимален ваще? Biggrin

Идем дальше. Модный тренд - Nginx (или Lighttpd) + PHP-FPM, вместо Apache+mod_php. Мое мнение - это решение для бедных. Для тех, у кого есть дохлый VDS с 128 мегабайт ОЗУ, на котором нужно поставить что-нибудь, а может даже и Друпал. Задача решаемая, но таким количеством сопроводительного гемора, что дешевле будет просто купить VDS подороже (время программиста и одмина тоже стоит денег). Вам, с вашим сервером, это тупо не нужно. Вот избавились еще от одного "оптимального" выбора Biggrin

Идем дальше - ваш сайт настолько большой, что сервер БД начинает тупо тормозить, не влезать в ОЗУ и копошиться в свопе. Решение очень неоптимальное, но тупо надежное - покупаем другой сервер, и ставим на него MySQL отдельно, единоличным владельцем ресурсов. И когда будете покупать, напихайте туда ОЗУ побольше (да хоть 32-64 гига), и диск побыстрее (SAS например). Вынесите БД туда, настройте сервер оптимальненько и посмотрите на эффект, особенно на юзерах онлайн. Оптимально? Ага, натюрлих Biggrin

Идем дальше - картинок стало настолько до хрена, что исходящий канал начинает тупо забиваться отдачей статики. Че делать? Выносим хранение и отдачу статики на другие сервера, на Amazon, на CDN - главное чтобы основной канал сервера разгрузить. Оптимально? Да без базара! Biggrin

Понимаете? Этот процесс бесконечен. Все упирается только в ваши ресурсы и способности ставить и решать задачи. Причем все, что я говорил выше, "оптимально", блеать, не только для Друпала, но и для любых нагруженных сайтов, включая решения на Битриксе и любых других движках, построенных на PHP+MySQL.

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

"Wolf-alone" wrote:
"сысодмын" это такой зверь, которому нужно поставить задачу. Что настроить и как. Команду "сделай всё зашибись" - он не понимает!

Пока у вас в голове будет каша вместо четкой постановки задачи, он так и не будет вас понимать. И правильно, нефиг Biggrin Оптимально, ....ть. Слов нет.

И ваще, работать надо, суп стынет! Biggrin