Выбор програмной среды на сервер

Здравствуйте!
Есть такая конфигурация: P4 2.8 GHz HT, 1 Гб (2х512)DDR 400 MHz Dual Channel оперативки. Два винчестера на 120 и 200 Гб. Сейчас стоит Windows Server 2008 с обновлениями и IIS сервер версии 7.0.Стоит статический IP. Настроено удаленное управление на два пользователя. Буду ставить один сайт на livestreet с поиском на Sphinx и друг будет ставить сайт на WordPress
Подскажите, пожалуйста. Как лучше сделать?
  1. Ставить на эту конфигурацию 2 сайта
  2. Ставить на Windows Server 2008 два сайта но вместо IIS ставить Apache
  3. На Windows Server 2008 один сайт на IIS, другой на Apache
  4. Или поставить стабильную официальную версию Debian 6.0.6 и на Apache поставить два сайта.
Дело в том что в Debian почти нечего не настраивал. Вчера на виртуалку на домашнем пк поставил Debian, работает. Но немного все по-другому.
Есть ли явные преимущества при переходе на Debian или Apache? Желательно не просто сказать, да или нет, а в приблизительно в % или просто подробней.

22 комментария

avatar
Чуть про сеть не забыл
avatar
Nginx вместо Apache, сэкономите и место и ресурсы.
avatar
Вроде nginx — используют для балансировки нагрузки. Nginx желательно ставить на Debian или Windows Server 2008?
А можно на него два сайта поставить — один сайт на livestreet с поиском на Sphinx, второй на WordPress?
avatar
Я думаю можно поставить и не только один\два но много сайтов на 1 сервер www.google.com.ua/search?q=iis+%D0%B2%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9+%D1%85%D0%BE%D1%81%D1%82&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ru:official&client=firefox-a
Вопрос только в том насколько посетителей вы рассчитываете. ну и nginx полюбому для статики надо в идеале на РЕКОМЕНДУЕМОЙ для него конфигурации. Но на 1-х порах думаю нормально будет и на Винде
avatar
Nginx + PHP-FastCGI, а в качестве спаунера php-fpm.

Вкратце, что такое FastCGI и почему он лучше чем mod_php?

FastCGI это высокопроизводительный и масштабируемый интерфейс для взаимодействия web-сервера и приложений, дальнейшее развитие технологии CGI. Ознакомиться с более подробной информацией о FastCGI вы можете на официальном сайте или в Википедии.

Основное преимущество FastCGI в изолировании динамического языка от web-сервера. Например, запуск FastCGI процесса под пользователем, отличным от пользователя web-сервера, а также процесс может находиться в chroot'е, отличном от chroot'а web-сервера. Помимо всего прочего, эта технология позволяет запускать web-сервера и CGI процессы (теже php скрипты) на различных хостах, что улучшает масштабируемость и также способствует безопасности без существенной потери в производительности.

Ну а зачем нам php-fpm, если PHP и так поддерживает работу в режиме FastCGI?

php-fpm — это патч для PHP, для использования PHP как FastCGI процесса в высоконагруженных системах. Устраняет ряд проблем мешающих использовать PHP в режиме FastCGI. Андрей Нигматулин представил набор патчей php-fpm к PHP 4/5, устраняющих ряд проблем, которые мешают использовать PHP в режиме FastCGI на высоконагруженных системах.

Возможности php-fpm:

* Управление процессами. Возможность «плавно» останавливать и перезапускать php воркеры без потери запросов. Возможность плавно обновлять конфигурацию и binary без потери запросов;
* Ограничение ip адресов, с которых могут приходить запросы от web сервера;
* Динамическое количество процессов, в зависимости от нагрузки (TODO);
* Запуск воркеров с разными uid/gid/chroot/environment и разными php.ini опциями;
* Логирование stdout & stderr рабочих процессов;
* Аварийный перезапуск всех процессов при случайном разрушении shared memory opcode cache, если используется акселератор;
* Принудительное завершение подвисших процессов, если set_time_limit() не срабатывает (TODO);

Почему выбрать Debian
avatar
А можно на него два сайта поставить — один сайт на livestreet с поиском на Sphinx, второй на WordPress?

Можно, используя вирт. хосты

Копирием конфиг default для двух сайтов

cp /etc/nginx/sites-available/default /etc/nginx/sites-available/site1.com
cp /etc/nginx/sites-available/default /etc/nginx/sites-available/site2.com

Изменяем как нужно секцию server{}, и активируем в sites-enabled путем создания сим.линка

ln -s /etc/nginx/sites-available/site1.com /etc/nginx/sites-enabled/site1.com
ln -s /etc/nginx/sites-available/site2.com /etc/nginx/sites-enabled/site2.com

Перезагружаем nginx

/etc/init.d/nginx restart
avatar
и это все без Apache? Производительность такой связки в Debian может быть больше чем в Windows serwer 2008?
avatar
С чем умеете работать, что умеете настраивать, то и ставьте.
  • bobo
  • 0
avatar
Если разница в производительности и нагрузке от использования определённой системы или софта сервера более 10% то «танцы с бубном» при настройке уместны
avatar
1. Для Win2K8 1 ГБ памяти маловато, рекомендуется 2 ГБ минимум.
2. В IIS поддержка php реализована только для популяризации платформы, к тому же IIS не поддерживает .htaccess, у него рерайты через isapi filter.
3. Можно установить Apache на Debian, два сайта может крутится на одном веб-сервере с помощью виртуалхостов. Перед апачем поставить Nginx как прокси, так будет проще администрировать для начинающего, либо вообще использовать так называемую связку LAMP и не заморачиватся пока что.
avatar
На довольно мощном сервере использую lamp, но в последнее время начал сервачок падать .../apache2/error.log — segmentation fault. Там стандартная сборка хостера с worker-mpm. Стоит ли заменить апач на nginx? Вообще боюсь что с реврайтом будет косяк.
avatar
Вот параметры хостинга
avatar
В вашем случае нужно смотреть в каком месте апачу стает плохо, смотреть нужно coredump, или обратится в поддержку хостера.
С реврайтами для Nginx никаких проблем нет. Если у вас на сервере не живет зоопарк CMS, то переехать с апача на php-fpm + Nginx стоит
avatar
Стоит только Livestreet, но скоро планируется сайт на kohana.
Не подскажите правильный ли это rewrite для ls?
avatar
Здесь пишут что это не верное написание конфига.
avatar
Для nginx по сей день использование Windows в качетсве платформы не является хорошей идеей. Да и 1Gb для сервера это по любому не серьёзно, при нынешних-то ценах на память…
avatar
Если nginx очень необходимый и полезный компонент то прийдется изучать Debian.
Докупать память стандарта DDR не выгодно, она и медленней и дороже чем DDR2,DDR3
avatar
Не обязательно Debian. Любой UNIX. Родная платформа nginx это вообще-то BSD. :) Проcто порт на Windows появился сравнительно недавно и не вызывает полного доверия даже у самих разработчиков :)

Но это всё теория. Если вы не ожидаете каких-то серьезных нагрузок, то и незачем строить какую-то сложную платформу. Т.е. грубо говоря, если у вас в среднем меньше чем 3 запроса динамических страниц в секунду, то что угодно сойдёт :)
avatar
Фрагментация NTFS)?
avatar
где?
avatar
Windows Server 2008
avatar
да
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.