lopter-lopter

Рейтинг
68
Регистрация
19.11.2014
nash300 #:

Я сделал так, в качестве днс использовал selectel, можно cloudflare использовать, и selectel и cloudflare позволяют управлять настройками днс записей через API, время ttl для A записей поставил 120. Сайт и его копия хранятся на VPS у разных хостеров, резервный сервер по крону следит за доступностью основного сервера с помощью php скрипта, в случае не доступности основного сервера на резервном запускается php скрипт который через API меняет A записи, соответственно когда основной сервер становится доступным, он так же по крону меняет записи обратно. Так уже 4 года работает на нескольких сайтах, с посещаемостью от 20000 до 150000 уников в сутки. Так как ttl 120 переключается быстро, падения трафика судя по метрике не было, по крайней мере заметного падения.

Из минусов, если днс ляжет или оба сервера одновременно, то работать не будет. Из плюсов бесплатно, переключается быстро.

По-моему всё логично. Воспользуюсь, спасибо.

Плагин Gonzales например.
webinfo #:

Ну с бэкапами всё понятно, с резервным копированием тоже всё ясно. Но у вас задача получается чуть сложнее: как я понял, у вас предполагаются два идентичных сервера, работающих взаимозаменяемо. И в этом случае изменения в БД и файловой системе первого сервера должны мгновенно записываться на втором сервере, и наоборот - изменения в БД и файловой системе второго сервера должны мгновенно записываться на первом сервере, причём на время внесения изменений доступ к обоим серверам блокируется (иначе произойдёт коллизия при смене рабочего  сервера). И хуже всего будет ситуация, когда копирование данных ещё не завершено, а сервер переключился. И непонятно, как быть с копированием данных, когда один из серверов недоступен? Третий сервер задействовать? То есть все эти rsync и т.п. на практике всё равно не обеспечат полную бесперебойность.

Это так. Но тут скорее борьба за время простоя, раз уж по-другому никак с синхронизацией. И DNS явно не выигрышный вариант. Может быть проблема решается неким минимальным «смещением» во времени при синхроне баз разных VDS?

rustelekom #:

Балансер нужен. Например, CloudFlare. На самих VPS настроить синхронизацию баз и файлов. Минимально - кластер из MariaDB + rsync. Этого будет достаточно для поддержания доступности обычного сайта.

Значит всё-таки Клаудфэр. Не то чтобы я не хотел от него зависеть, но разве параллель между двумя VDS — настолько ненужная связка?
Я ещё немного не в тему поинтересуюсь. Почему Мария, а не Мускул? Уже не впервой встречаю такую рекомендацию.

NoMoreContent #:

Поэтому ассеты иногда целесообразно раздавать с помощью геоднс, а приложение лучше держать в одном ДЦ.

Геоднс — это про клаудфлэр?

LaSet #:
Для обеспечения непрерывной работы вашего веб-приложения и автоматического переключения между VDS-хостингами в случае падения одного из них, вы можете использовать технику, называемую "высокой доступностью" (High Availability, HA). Вот общий план, как это можно реализовать:

Спасибо за развёрнутый ответ. Буду курить тему. Я так понимаю, что вы перечислили сторонние независимые сервисы? Потому что не хотелось бы сваливать все яйца в одну корзину.

webinfo #:

Прошу извинить за "параллельный" вопрос, просто интересно: а в БД как пишете информацию?

Не уверен, что дам точный ответ. Я в этом плаваю. У меня VDS сейчас на тесте, где регулярно создаются бэкапы, периодически уходящие на другой сервер. Если правильно понял ваш вопрос, то всем заведует Апач и MySQL. Или я совсем не о том?

Ilya74 #:

Load balancing, failover DNS. Но без падений вообще даже при такой схеме не получится, так как DNS не обновляются мгновенно, а балансер может упасть тоже.

Да, вот с обновлением DNS конечно затык. Наверное основной. Не решаемо?

Samail:
/\*[\S\s]+?(?=\*/)\*/

Круто. Тему можно закрывать)

Спасибо!

spbs:
Может, нубский вопрос - а зачем нужен "?". Точка - любой символ, звездочка - 0 или сколько угодно вхождений. А вообще - в notepad++, когда нужно, регуляркой правлю.

Ну может быть уже от безысходности)) Так-то разные варианты перепробованы. Объяснить Дриму необходимость поиска и замены на нескольких строках, всё равно не получается.

123 4
Всего: 38