![]() |
|
|
![]()
|
|
| Хоббит |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1263 Регистрация: 6.11.2005 Репутация: нет Всего: 1 |
Возникла наверно тривиальная ситуация. Распределить нагрузку на веб сервер. ngingx + apache. На несколько серверов.
Поиск по интернету дал ссылки на многие схемы и статьи по этой теме, но практически нигде не было указаны конкретные решения. Среди аппаратных, программных и смешанных решений меня интересуют прежде всего программные. Интересует распределение нагрузки с учётом загруженности серверов и их работоспособности, так что round robin dns не подходит. На сколько я понял распределят нагрузку может и nginx при этом ему можно указать и резервный сервер, который вступит в строй, когда все откажут. Возникают вопросы. Стоит ли на другие сервера ставить к apache еще и nginx? Или это уже лишнее. Какие еще программные средства мне могут помочь? С большой ли нагрузкой справится один nginx? Второй вопрос, который меня всегда интересовал. А что если система балансировки выйдет из строя. Нашел в интернете такое решение. Рядом с основным сервером, стоит резервный, который мониторит состояние основного и когда основной падает, резервный встает на его место. Но опять же никаких программных средств я для этого не нашел. Но прочитал про carp для freebsd ... может это в тему? |
|||
|
||||
| marykone |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2722 Регистрация: 2.5.2006 Где: Краснодар Репутация: 10 Всего: 67 |
-------------------- получил ответ, пометь вопрос как решенный (правый верхний угол вашей темы). |
|||
|
||||
| DSsupport |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 5.3.2009 Репутация: 5 Всего: 5 |
По поводу распределения нагрузки, nginx достаточно хорошо справляется с распределением нагрузки. У него есть возможность добавить все ноды в один пул(т.е. какой-то отдельный сервер указывать не надо, при возникновении проблем nginx просто не будет обращатся к выключеной ноде), при получении запроса от клиента, nginx, сам распределит запрос на соответствующую ноду. При большом числе запросов, nginx достаточно равномерно распределяет нагрузку по всему кластеру.
Достаточно доступная документация есть в модели реализации nginx + mongrel для ruby сайтов. В Вашем случае mongrel заменяется на apache. Как итог - load balancing для Apache. По поводу отказоустойчивости. Тут необходимо уделить внимание самым слабым местам. Необходимо решить проблему с устойчивостью nginx как load balancer-а (LB) так и нод всего кластера на которых работает apache(HA). В минимальной конфигурации это было бы 4-е сервера. 2-а под LB и два под HA. Задача решается с помощью последней версии Heartbeat. Статья для размышлений. В идеале еще использовать виртуализацию(например Xen), в этом случае можно устроить такую конфигурацию всего на двух физических серверах. Из возникающих проблем - необходимо следить за сессиями клиентов, когда клиенты ходят на разные ноды(решалось записью сессий в базу данных). И соответственно за идентичным конетентом сайта на всех нодах, а так же единая база данных(видимо до этого Вы еще не дошли).
Зависит от аппаратной части. Будут вопросы, можете задать их напрямую(контакты в подписи). P.S.: Пользователи форма, возможно, подскажут и другие варианты. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |