Веб-кластер

Модуль Веб-кластер — это комбинация технологических решений, которые позволяют распределить один сайт на несколько серверов, решая тем самым несколько задач: обеспечение высокой доступности сайта; его масштабирование в условиях возрастающей нагрузки; балансирование нагрузки, трафика, данных между несколькими серверами. Постройте свой Веб-кластер — повысьте производительность, масштабируемость и надежность вашего проекта!
веб-кластер
Любой новый или работающий проект на «1С-Битрикс: Управление сайтом» может быть представлен как веб-кластер взаимозаменяемых серверов.
Основные задачи, которые позволяет решить подобная конфигурация проекта:

  • При увеличении посещаемости можно быстро добавить в кластер новые сервера
  • В случае выхода из строя одного из серверов кластера система продолжает беспрерывно обслуживать Клиентов
  • Балансирование нагрузки, трафика, данных между несколькими серверами
  • Система позволяет снимать резервные копии со специально выделенных узлов кластера, не влияя на работу сайта

«Географический веб-кластер»

«Географический веб-кластер» повышает отказоустойчивость проекта и обеспечивает независимость от дата-центра. В различных дата-центрах объединяются несколько групп веб-кластеров, находящихся в разных городах или странах. В случае отказа одного дата-центра, в работу мгновенно включается другой, без необходимости восстановления «бэкапа».

Географический веб-кластер позволяет поднимать целые группы серверов. В каждой из этих групп работает свой мастер — в независимых друг от друга датацентрах. Тем самым ваши сайты, ваш бизнес полностью защищены от недоступности самих датацентров.
«1С-Битрикс: Веб-кластер» — это комбинация технологий:

  • Вертикальный шардинг (вынесение модулей на отдельные серверы MySQL)
  • Репликация MySQL и балансирование нагрузки между серверами
  • Распределенный кеш данных (memcached)
  • Непрерывность сессий между веб-серверами (хранение сессий в базе данных)
  • Кластеризация веб-сервера:
  • Синхронизация файлов
  • Балансирование нагрузки между серверами
  • Независимость от дата-центра (в случае отказа одного дата-центра, в работу мгновенно включается другой, без необходимости восстановления «бэкапа»)

Как работает

1. Вертикальный шардинг

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


В отдельные базы можно вынести следующие модули продукта:

  • «Веб-аналитика»
  • «Поиск»

2. Репликация MySQL и балансирование нагрузки между серверами

Схема «master — slave» реализуется средствами MySQL.
Платформа «1С-Битрикс: Управление сайтом» позволяет гибко балансировать нагрузку между серверами, участвующими в репликации.

Ключевые особенности:

  • гибкая балансировка нагрузки SQL
  • простота администрирования
  • дешевое и быстрое неограниченное масштабирование
  • он-лайн бэкап
  • не требуется доработка логики веб-приложения

3. Распределенный кеш данных (memcached)

«1С-Битрикс: Веб-кластер» позволяет использовать пул серверов memcached для работы с кешем данных.

Это обеспечивает:

  • высокую эффективность — за счет централизованного использования кеша веб-приложением
  • надежность — за счет устойчивости подсистемы кешировния к выходу из строя отдельных компонентов
  • неограниченную масштабируемость — за счет добавления новых memcached-серверов

4. Непрерывность сессий между веб-серверами (хранение сессий в базе данных)

Возможность хранения данных пользовательских сессий в базе данных обеспечивает «прозрачность» сессии для всех веб-серверов кластера:

  • После авторизации на одном из серверов пользователь должен считаться авторизованных и для всех других серверов
  • И наоборот — окончание сессии на любом сервере должно означать ее окончание на всех серверах сразу

5. Кластеризация веб-сервера


При разделении проекта на несколько веб-серверов необходимо решить две задачи:

  • синхронизация данных (файлов) между серверами
  • балансировка нагрузки между серверами
Использованы материалы с сайта «1С-Битрикс»: www.1c-bitrix.ru