Модуль Веб-кластер - это комбинация технологических решений, которые позволяют распределить один портал на несколько серверов, решая тем самым несколько задач: обеспечение высокой доступности портала; его масштабирование в условиях возрастающей нагрузки; балансирование нагрузки, трафика, данных между несколькими серверами. Постройте свой Веб-кластер - повысьте производительность, масштабируемость и надежность вашего портала! |
Любой новый или работающий портал на «1С-Битрикс: Корпоративный портал» может быть представлен как веб-кластер взаимозаменяемых серверов. Основные задачи, которые позволяет решить подобная конфигурация проекта:
|
«1С-Битрикс: Веб-кластер» - это комбинация технологий:
- Вертикальный шардинг (вынесение модулей на отдельные серверы MySQL)
- Репликация MySQL и балансирование нагрузки между серверами
- Распределенный кеш данных (memcached)
- Непрерывность сессий между веб-серверами (хранение сессий в базе данных)
- Кластеризация веб-сервера:
- Синхронизация файлов
- Балансирование нагрузки между серверами
1. Вертикальный шардинг
Разделение одной базы данных веб-приложения на две и более базы данных за счет выделения отдельных модулей, без изменения логики работы веб-приложения. В отдельные базы можно вынести следующие модули продукта:
- «Веб-аналитика»
- «Поиск»
2. Репликация MySQL и балансирование нагрузки между серверами
Схема «master - slave» реализуется средствами MySQL.Платформа «1С-Битрикс: Управление сайтом» позволяет гибко балансировать нагрузку между серверами, участвующими в репликации.
Ключевые особенности:
- гибкая балансировка нагрузки SQL
- простота администрирования
- дешевое и быстрое неограниченное масштабирование
- он-лайн бэкап
- не требуется доработка логики веб-приложения
3. Распределенный кеш данных (memcached)
«1С-Битрикс: Веб-кластер» позволяет использовать пул серверов memcached для работы с кешем данных.Это обеспечивает:
- высокую эффективность - за счет централизованного использования кеша веб-приложением
- надежность - за счет устойчивости подсистемы кешировния к выходу из строя отдельных компонентов
- неограниченную масштабируемость - за счет добавления новых memcached-серверов
4. Непрерывность сессий между веб-серверами (хранение сессий в базе данных)
Возможность хранения данных пользовательских сессий в базе данных обеспечивает «прозрачность» сессии для всех веб-серверов кластера:- После авторизации на одном из серверов пользователь должен считаться авторизованных и для всех других серверов.
- И наоборот - окончание сессии на любом сервере должно означать ее окончание на всех серверах сразу.
5. Кластеризация веб-сервера
При разделении проекта на несколько веб-серверов необходимо решить две задачи:
- синхронизация данных (файлов) между серверами
- балансировка нагрузки между серверами