@PlatinumArcade

Как максимально приблизить аптайм сайта к 100%?

Начал разработку перспективного проекта, но пока в голове не укладывается, как сделать, чтоб сайт работал бесперебойно? Это очень важно и будет работать на авторитет проекта. Явно же для таких целей одного выделенного сервера маловато…



Может есть ссылки, или объясните пожалуйста основные принципы работы серьезных сайтов?
  • Вопрос задан
  • 2480 просмотров
Пригласить эксперта
Ответы на вопрос 6
@dgstudio
Ключевые слова для гугления: кластер, dns-balancer, load-balancer. Пресловутые облака частично решают эту задачу. Но надо учесть, что облачный хостинг — это как правило виртуальные машины со всеми вытекающими последствиями: в первую очередь медленный диск.

Второе — нормально написанный код. Если для генерации одной страницы производится 100500 запросов к БД, то тут никаких кластеров не хватит :)
Ответ написан
VBart
@VBart
Принцип? Избегать единых точек отказа в системе.
Ответ написан
Комментировать
@impass
1. Собственный/арендованный сервер в надёжном ДЦ.
2. Пряморукий админ + автоматический мониторинг основных показателей (пинг, доступность портов, запущенность процессов и т.п.).
3. Not Windows.

Не знаю что у вас за проект такой хитрый, но прежде чем распространяться про кластеры, облака и прочие трендовости, хорошо бы иметь какие-то подробности.
Ответ написан
vanxant
@vanxant
В облака езжайте, к амазону например, или там в оверсан. Только облачный хостинг может гарантировать действительно почти 100% онлайн. По-началу это будет вам стоить примерно столько же, как и обычный хостинг, потом конечно с некоторой нагрузки становится дороже, чем держать свой сервер, но дешевле, чем держать два своих сервера и морочить себе голову синхронизацией данных.
Когда уже явно выйдете по нагрузке за пределы мощности пары физических серверов, вот тогда наймете нормальных инженеров и начнете обустраивать свой датацентр.
Ответ написан
Комментировать
akalend
@akalend
программирую
1) чистый код — не используйте быдлодвижки по 38 запросов на формирование 1- стр
2) хороший админ
3) облака не панацея, но на первом этапе можно в них и повитать
4) хороший коммент постом выше, дополню его: nginx upstream, mysql-proxy, mysql clauster (есть аналогичные решения и на pg и в mongo — в зависимости от того — что используешь)
Ответ написан
pentarh
@pentarh
Нужно настроить High-Availability софт. Такой как Heartbeat или Pacemaker. Либо использовать High-Availability технологии, предлагаемые современными гипервизорами (VmWare VSphere, MS HyperV).

Разница в том что HA софт работает на уровне железяк и железяки должны быть настроены абсолютно одинаково. В случае сбоя мигрирует сервис на доступный узел. А в HA технологиях виртуализации вы настраиваете к примеру виртуалку и она работает на гипервизоре. В случае сбоя виртуалка целиком мигрирует на доступный сервер.

Я работал с Heartbeat и Pacemaker. Скажу что Heartbeat конечно костыль еще тот. Поддерживает до двух узлов, не умеет самостоятельно определять сбой ресурса и отрабатывать. Всех этих недостатков лишен Pacemaker. Мега удобная хрень, но документации по ней еще мало, поскольку это leading-edge технология.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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