Отказоустойчивые решения
На опреденном этапе развития вашего бизнеса вы уже не можете позволить отключение вашего сайта даже на 20 минут. Ведь это приведёт к потере клиентов, репутации и прибыли. С ростом посететителей сайта вы можете всё чаще наблюдать замедление скорости его работы, возникновение различных ошибок при открытии страниц. Многие в подобной ситуации пытаются решить проблему сменой сервера на более мощный, что является трудозатратным, достаточно рисковым и лишь временным решением, потому как через некоторое время и нового сервера будет недостаточно. Наша практика показала, что лучшим выходом является использование масштабированной отказоустойчивой системы.
Данное решение позволит:
- Иметь полную копию работающего сайта на резервном сервере (возможно даже в другой стране)
- Быстро (около двух минут) переключать сайт на другой сервер в случае проблем с основным
- Распределять посетителей по нескольким серверам. Это позволит увеличить количество обрабатываемых запросов к сайту и увеличит скорость его работы при нагрузке
- Не иметь проблем с нагрузкой при создании резервных копий (могут делаться на любом из серверов)
- Полную автоматизацию переключения сайта между серверами (в случае недоступности одного, сайт автоматически будет запускаться с другого работающего сервера)
- В короткие сроки (до 1 часа) добавить дополнительный сервер в кластер, либо заменить один из серверов (на работе проекта данная процедура не отразится). Вы получите возможность увеличивать ресурсы без остановки сайта на обслуживание
Требования к сайту и серверам:
- Сайт должен быть написан на PHP + MySQL (только InnoDB)
- Минимальное количество серверов в кластере 3 (2 сервера с сайтами и 1 управляющий сервер). Управляющим сервером может быть VDS с объёмом памяти от 1024 Мб
- Теоретически существует ограничение на количество файлов (на текущий момент без проблем работают системы с 200 000 файлов)
- Существует ограничение на объём загружаемых на сервер файлов (скорость работы дисков и канал должны позволять быстро передавать файлы на соседние сервера). К примеру, для раздачи фильмов такое решение не подойдёт
Техническая реализация:
- Кластерный MySQL-сервер. Используется синхронизация master <-> master (автоматически все изменения синхронизируются между серверами)
- В определенный промежуток времени (1-5 минут, в зависимости от частоты изменений) синхронизируются файлы между серверами. Все данные по файлам хранятся в базе SQLite, передаются лишь изменившиеся и новые файлы
- Управляющий сервер следит за целостностью данных в кластере. Даже если связь между серверами нарушается, то вся синхронизация продолжит идти через него
- Сервера подключаются к внешней системе мониторинга, которая получает данные о работе кластера (нагрузка, все основные параметры сервера, количество работающих узлов в кластере). Наши специалисты получают уведомления при любых отклонениях и оперативно их исправляют.
Настройка и обслуживание отказоустойчивой системы | 10000 руб* настройка | 11900 руб* обслуживание |
* Настройка выполняется в несколько этапов (3-5 дней) и оплачивается один раз. Обслуживание оплачивается ежемесячно (цена указана для кластера из 3 серверов).