Gorky
@Gorky
Веб-разработчик

Отказоустойчивость сайта (падение сервера) — как?

Здравствуйте друзья!



Вкратце ситуация: есть небольшой сайт-стартап А, на сервере А. Сервер периодически падает. Вроде бы с кем не бывает, но эти падения очень критичны — уходят клиенты (потому что стартап, завязанный на клиентских сайтах и у них наши штуки в это время перестают работать).



Вопрос — что делать?

Если на другом хостинге (сервер Б) постоянно дублировать код и базу с сервера А, то КАК при падении А мгновенно переключать трафик на Б? Или каким другим способом нивелировать падение сервера?



— С вопросом необходимости 100% работы сталкиваюсь впервые, раньше проекты были не столь критичны, буду очень благодарен за ссылки или маны, статьи и личный опыт. Спасибо!
  • Вопрос задан
  • 7605 просмотров
Пригласить эксперта
Ответы на вопрос 9
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
Взрослый мир решает эти проблемы при помощи BGP и анонсировании одного IP из двух точек сразу. Соответственно, при падении одной из точек — анонсы оттуда перестают прилетать.
Ответ написан
SchrodingersCat
@SchrodingersCat
ucarp, keepalived и т.д. вам помогут. Виртуальный ip'шник будет бегать между двумя серверами, а базу данных можете реплицировать стандартными средствами.
Ответ написан
shsweb
@shsweb
Может быть есть возможность на клиентском сайте выбирать какой из ваших серверов жив и стучаться туда?
Ответ написан
@Silver_Clash
Ищите по слову балансировщик.
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
В вашем случае самым простым способом было бы действительно взять еще один сервер, продублировать все, а затем на третьем сервере сделать балансировщик нагрузки. Так же существует возможность балансировщик задать на уровне DNS серверов. Встречал DSN хостинги где такая возможность существует. Тогда по одному домену запросы будут рассылаться на разные IP адреса серверов. Этот вариант очень удобен и быстр в реализации. Например Амазон предоставляет подобные сервисы.
Ответ написан
z0rc
@z0rc
Ещё как вариант можно рассмотреть кеширование сайта через Akamai или CloudFrount. Пока не истёк TTL кеша, сайт будет доступен, даже когда сервер лежит. Бонусом получите ощутимое снижение нагрузки.
Ответ написан
charon
@charon
а еще есть вариант — сменить хостера :) Понятно, что это дополнительно ко всему остальному, но описанное вами поведение " постоянно случаются форс-мажоры: то в ДЦ электричество выключат, то админ ногой шнур выдернул, то пожар" — это какой-то детский сад, нельзя с такими делать бизнес.
Ответ написан
michs
@michs
Вот неплохо всё расписано.
habrahabr.ru/post/104621/
Ответ написан
Gorky
@Gorky Автор вопроса
Веб-разработчик
В общем-то стороны, куда нужно смотреть, теперь хотя-бы в целом понял. Буду копать дальше сам. А всем кто помог — спасибо и кармы друзья! =)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы