веб-сайты высокой доступности - PullRequest
1 голос
/ 05 июня 2011

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

Ответы [ 3 ]

2 голосов
/ 05 июня 2011

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

Я настоятельно рекомендую использовать балансировщик нагрузки и хотя бы пару веб-серверов.На работе мы используем HA Proxy, который полностью способен гарантировать, что сеансы «залипают» и отправляются на один и тот же веб-сервер, если он не выходит из строя, где он переключается при сбое.Высокая доступность позволяет настроить два сервера балансировки нагрузки, которые являются зеркальным отображением друг друга.Назначьте один виртуальный IP-адрес для обоих ваших балансировщиков нагрузки.Напишите скрипт, который будет опрашивать другой сервер, чтобы проверить, не работает ли он;если он не работает, пусть этот скрипт получит этот виртуальный IP-адрес.Сценарий должен работать на обоих серверах.

Эта ссылка описывает один способ управления виртуальным IP-адресом.Подобные статьи были написаны для большого количества дистрибутивов Linux, но все они основаны на одном и том же методе.

2 голосов
/ 05 июня 2011

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

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

0 голосов
/ 05 июня 2011

Loadbalancers. Они должны быть настроены таким образом, чтобы они могли обрабатывать сеансы. Возможно, посылая один и тот же ip на один и тот же сервер каждый раз. Или храните их в базе данных или в некоторой общей памяти, если она должна быть действительно быстрой по какой-то причине, о которой я не думал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...