По для высоконагруженных проектов

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

Аватар пользователя chel chel 27 апреля 2012 в 13:01

Суть задачи.
Необходимо выбрать ПО и разработать схему взаимодействия ПО и серверов для организации фермы отказоустойчивых WEB-серверов для порталов:
1. Балансирование нагрузки HTTP-запросов между фронтэнд-серверами.
2. Разнесённый по фронтэнд/бэкэнд-серверам функционал.
3. Возможность последующего добавления в схему внешних кэширующих серверов.

Рассматриваемые варианты:
HAProxy, LVS, Nginx, Heartbeat, DRDB, Varnish , на чём-нибудь типа Cisco CCS,...

Комментарии

Аватар пользователя a.roman a.roman 29 апреля 2012 в 1:07

Задача совсем не подробно описана:), но как вариант

"chel" wrote:
1. Балансирование нагрузки HTTP-запросов между фронтэнд-серверами.

Можно использовать haproxy, хотя возможно хватит varnish или nginx (зависит от потребностей)
Также есть неплохие аппаратные решения у хостеров, например Gogrid.com. На Amazon есть по отзывам отличный сервис.
"chel" wrote:
2. Разнесённый по фронтэнд/бэкэнд-серверам функционал.

Например решение от RxB;)
Файлы можно держать на общем для всех серверов хранилище, либо обеспечить распространение изменений по серверам (Зависит от наличия HA хранилища c высокой скоростью доступа к нему).
Если проект нагруженный, значит нужно будет как то масштабировать MySQL (например, MySQL Cluster - его еще не видел в работе), либо Master/Slave использовать, только в последнем случае нужно будет веб-приложение адаптировать для работы с такой базой.

"chel" wrote:
3. Возможность последующего добавления в схему внешних кэширующих серверов.

Memcached/Redis - в качестве кэширующего бэкенда
Varnish/Nginx - кэширование страниц для анонимов, использование ESI для авторизованных пользователей

--
Роман

http://drupal-coder.ru
http://drupal-admin.ru

Аватар пользователя chel chel 5 мая 2012 в 10:59

+++

Думается мне, Nginx у нас встанет в качестве фронтэндов статического контента и балансировщиков нагрузки, а вот динамику будем отдавать ему из Апача или Lighttpd. Рою дальше.

Аватар пользователя a.roman a.roman 8 мая 2012 в 2:52

"chel" wrote:
Думается мне, Nginx у нас встанет в качестве фронтэндов статического контента и балансировщиков нагрузки, а вот динамику будем отдавать ему из Апача или Lighttpd. Рою дальше.

Как вариант динамику можно отдавать через Php-fpm