1С-Битрикс: Веб-кластер
Сколько стоит 1 час?Крупный интернет-магазин с годовым оборотом 1.5 млрд. руб.
210 рабочих дней в году по 10 рабочих часов.
Час простоя крупного интернет-проекта может обойтись владельцам в 0,3 - 1 миллион рублейупущенной выручки.Основные задачи, которые решает веб-кластер:Обеспечение высокой доступности сервиса (так называемые HA - High Availability или Failover кластеры)Масштабирование веб-проекта в условиях возрастающей нагрузки (HP - High Performance кластеры)Балансирование нагрузки, трафика, данных между несколькими серверамиСоздание целостной резервной копии данных для MySQL
«Веб-кластер» обеспечивает непрерывность бизнеса, отказоустойчивость, масштабирование, распределение нагрузки.
Любой новый или работающий проект на «1С-Битрикс: Управление сайтом» может быть представлен как веб-кластер взаимозаменяемых серверов.Приувеличениипосещаемостиможнобыстродобавить в кластерновыесервера.В случае выхода изстрояодногоизсерверовкластерасистемапродолжаетбеспрерывнообслуживатьКлиентов.Балансирование нагрузки, трафика, данных между несколькими серверами.Система позволяет снимать резервные копии со специально выделенных узлов кластера, не влияя на работу сайта.
Традиционная конфигурацияВеб-приложение («1С-Битрикс»)Кэш данныхБаза данных
История производительности платформы2005 год – производительность стала существенной задачей для разработки.2007 год – появление инструментов отладки SQL-запросов. 2007 год – первое нагрузочное тестирование с QSOFT (1.5 млн. хитов в сутки на редакции «Бизнес», 6 млн. – на редакции «Старт»).2008-2010 годы – развернуто 4 конфигурации Oracle RAC с 4 серверами.2009 год – «монитор производительности» во всех редакциях продукта.2009-2010 годы – выпущены «1С-Битрикс: Виртуальная машина» и «1С-Битрикс: Веб-окружение».2008-2011 – сертификация хостинг-провайдеров.2010 год – рост производительности – на 430%! Новые нагрузочные тесты: 8.5 млн. хитов – «Бизнес», 12.4 млн. – «Старт», 85 млн. – «HTML кеш».
+110%+430%За три года – на 430% быстрее!
Варианты масштабирования до 10.0:Разделение на два сервера: веб-сервер + база данных.Увеличение мощности оборудования (чем мощнее – тем дороже; рост стоимости не пропорционален).Выделение кеша на один внешний сервер через memcached.Переход на Oracle (минимальная лицензия +5000$ за процессор).Создание Oracle RAC (Real Application Cluster). Проект – около 150 000$ (оборудование + лицензия + «общая полка»). Очень мало специалистов.Для большинства клиентов производительности достаточно, но не решены проблемы отказоустойчивости, резервирования, сетевой доступности.
«1С-Битрикс: Веб-кластер» - это комбинация технологий:Вертикальный шардинг (вынесение модулей на отдельные серверы MySQL)Репликация MySQL (Oracle и MS SQL в дальнейшем) и балансирование нагрузки между серверамиРаспределенный кешданных (memcached)Непрерывность сессий между веб-серверами (хранение сессий в базе данных)Кластеризация веб-сервера:Синхронизация файловБалансирование нагрузки между серверами
Тестовый веб-кластер – в «облаке» Amazon
Аккаунтыa-mБаза данных MySQL 1База данных MySQL 1База данных MySQLБаза данных MySQLБаза данных MySQL 2База данных MySQL 2Аккаунты n-zВертикальный шардингГоризонтальный шардинг
Вертикальный шардингРазделение одной базы данных веб-приложения на две и более базы данных за счет выделения отдельных модулей, без изменения логики работы веб-приложения:Веб-аналитика
ПоискЭффективное распределение нагрузки.Масштабирование.Разделение больших объемов данных.
Примеры решений на веб-кластере:Масштабирование при росте нагрузки (MySQL)Веб-серверИнтенсивное использование клиентами поиска и статистики«1С-Битрикс:Управление сайтом»Выделенный сервер MySQLМодуль«Поиск»Модуль«Веб-аналитика»
Примеры решений на веб-кластере:Масштабирование при росте нагрузки (MySQL)Выделенный  сервер  MySQLВеб-сервер«1С-Битрикс: Веб-кластер»Модуль«Поиск»Модуль«Веб-аналитика»Выделенный  сервер  MySQLВертикальныйшардинг«1С-Битрикс: Веб-кластер»
Репликация и балансировка нагрузки MySQLГибкая балансировка нагрузки SQLПростота администрированияДешевое и быстрое неограниченное масштабированиеОнлайн бэкапНе требуется доработка логики веб-приложения
Репликация и балансировка нагрузки MySQL
Масштабирование при росте нагрузки MySQLВысокая посещаемостьВеб-серверВеб-приложениеВысокая нагрузка:~10^3 writes/sec~10^4 reads/sec1) Запросы обрабатываются только одним сервером СУБД2) CPU и дисковая подсистема СУБД – перегруженыБаза данных MySQL
Масштабирование при росте нагрузки MySQLВеб-сервер«1С-Битрикс: Веб-кластер»MySQL replication, mixed-modeSQL-балансировщик1С-БитриксБаза данных MySQLSLAVE 1База данных MySQLSLAVE NБаза данных MySQLSLAVE …База данных MySQLMASTER
Распределенный кеш данных (memcached)memcached1 memcached2memcached3Высокая эффективность - за счет централизованного использования кэша веб-приложениемНадежность - за счет устойчивости подсистемы кешировнияк выходу из строя отдельных компонентовНеограниченная масштабируемость - за счет добавления новых memcached-серверов.30%40%30%Веб-кластер «1С-Битрикс»Веб-серверВеб-серверВеб-сервер
Распределенный кеш данных (memcached)
Непрерывность сессий между веб-серверамиПользовательская сессия должна быть "прозрачной" для всех серверов веб-кластера. После авторизации на одном из серверов пользователь должен считаться авторизованных и для всех других серверов.И наоборот - окончание сессии на любом сервере должно означать ее окончание  на всех серверах сразу.
Задача: масштабирование при росте нагрузкиВысокая посещаемостьВысокая нагрузка на CPU >80%Веб-серверВеб-приложение1) Нагрузка обрабатывается только одним веб-сервером2) CPU перегружен обработкой PHP, прекомпилятор включен, наблюдаются segmentation faultsБаза данных MySQL
Задача: масштабирование при росте нагрузкиВысокая посещаемостьНагрузка на CPU <50%Балансировщик нагрузкиВеб-серверВеб-серверНода 1«1С-Битрикс: Веб-кластер»Авто-синхронизацияНода 2 «1С-Битрикс: Веб-кластер»База данных MySQL1) Нагрузка равномерно распределяется между нодами веб-кластера2) Сервера приложений не перегружены и работают в устойчивом штатном режиме
Задача: масштабирование при росте нагрузкиОчень высокая посещаемостьБалансировщик нагрузкиНода 1 «1С-Битрикс:Веб-кластер»Нода 2«1С-Битрикс:Веб-кластер»…НодаN«1С-Битрикс:Веб-кластер»База данных MySQL
Задачасинхронизации файловВеб-сервер 1Веб-сервер 2?/var/www
Синхронизация дисковых системДва типа:1. Синхронный:Общая «дисковая полка» (дорого, не резервирует данные)
Сетевые средства – NFS (очень медленно)
OCFS2
DRDB2. Асинхронный (синхронизациялокальных дисков)rsync
csync2Тип 1: общее хранилище данныхNAS (Network Attached Storage)NFS, SMB/CIFS, …. Просто, но медленно./var/wwwВеб-сервер 1Веб-сервер 2OCFS2, GFS2, …. Быстро, но сложно и дорого.SAN (Storage Area Network), «дисковая полка»/var/www
Тип 2: синхронизация локальных дисковНода 2 «1С-Битрикс: Веб-кластер»Нода 1 «1С-Битрикс: Веб-кластер»Csync2Csync2/var/www/var/wwwНода 3«1С-Битрикс: Веб-кластер»Csync2/var/www
Почему мы выбрали csync2?Быстрый доступ к файлам приложения за счет использования локальных хранилищ.Высокая скорость работы.Низкое потребление ресурсов (CPU, дисковые операции). Два этих фактора позволяют запускать процесс синхронизации максимально часто, поэтому данные на серверах становятся идентичными практически в "реальном времени".Простота настройки для обмена данными между любым количеством серверов.Возможность синхронизации удаления файлов.Защищенный обмен данными между хостами (SSL).
Организация резервного копирования - MySQLОнлайн бэкап данныхБаза данных MySQLSLAVE NБаза данных MySQLMASTERcandidateВеб-серверDRBD – он-лайнбэкап диска с базой данных«1С-Битрикс: Веб-кластер»ДискБаза данных MySQLSLAVE 1База данных MySQLMASTERЦелостный логический/физический бэкапMySQL без замедления работы основной системы
Организация резервного копирования - файлыLVMВеб-сервер/var/www –снепшот 1/var/www –снепшот 2«1С-Битрикс: Веб-кластер»/var/www –снепшот 3/var/wwwБыстрый, целостный бэкапна уровне LinuxБыстрый, целостный, инкрементальный, автоматически консолидирумыйбэкап инструментами хостера
Мы работаем над…круговой, асинхронной,master-master репликациейдля обеспечения работы географически распределенных веб-кластеров 1С-Битрикс«1С-Битрикс: Веб-кластер», ДЦ в Москве«1С-Битрикс: Веб-кластер», ДЦ в НовосибирскеВеб-нодаВеб-нодаКэшКэш«1С-Битрикс: Веб-кластер», ДЦ в Нью-ЙоркеБДБДВеб-нодаКэшБД
Мы работаем над…круговой, асинхронной,master-master репликациейдля обеспечения работы географически распределенных веб-кластеров 1С-Битрикс«1С-Битрикс: Веб-кластер», ДЦ в Москве«1С-Битрикс: Веб-кластер», ДЦ в НовосибирскеВеб-нодаВеб-нодаВеб-нодаВеб-нодаВеб-нодаВеб-нодаКэшКэшКэшКэшКэшКэш«1С-Битрикс: Веб-кластер», ДЦ в Нью-ЙоркеБДБДБДБДБДБДВеб-нодаВеб-нодаВеб-нодаКэшКэшКэшБДБДБД
«Живой» «Веб-кластер» в Амазоне!Поехали! 

More Related Content

PPTX
1c bitrix-cluster-et
PPTX
Webcluster cases
PPTX
02 1c-bitrix-cloud-storage
PPT
1С-Битрикс - Веб-кластер
PPTX
Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)
PPT
1С-Битрикс - Производительность
PDF
Александр Соловьёв, Griddynamics.com
PDF
High load2007 scaling-web-applications-rus
1c bitrix-cluster-et
Webcluster cases
02 1c-bitrix-cloud-storage
1С-Битрикс - Веб-кластер
Проектируем облачный веб-сервис "по-взрослому" (Сергей Рыжиков)
1С-Битрикс - Производительность
Александр Соловьёв, Griddynamics.com
High load2007 scaling-web-applications-rus

What's hot (20)

PPTX
Big data moscow meetup
PPT
“КП” в интернете (Александр Ромашин, Вячеслав Малютин)
PPTX
NoSQL - World IT Planet, Saint Petersburg 2015
PDF
Highload++ 2015
PDF
Отказоустойчивые решения SQL
PPTX
«Битрикс24»: архитектура и эксплуатация высоконагруженного облачного сервиса
PPTX
Soft layer IBM Cloud platform and GPU
PDF
Презентация Сафонова и Прусенка на семинаре "Продавайте больше"
PDF
24 hop sql_in_to_wa_1c _19march_2014_russian
PPTX
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
PPT
Bitrix24 (DevConf)
PPTX
Tuning HighLoad J2EE web application
PPTX
Введение в Apache Cassandra
PPTX
Highload: проблемы и решения
PPTX
Cassandra: быстрая запись данных в высоконагруженных системах
PDF
Резервное копирование и оптимизация хранения данных
PPTX
Интеграция сайта с облачным хранилищем (Александр Демидов)
PPTX
Максим Исаев, IBS. Практика использования комплекса Veritas NetBackup для мод...
 
PDF
Solit 2014, Обзор Infocloud для разработчиков, Трухин Юрий
PDF
Auditing HA/DR Сonfigurations
Big data moscow meetup
“КП” в интернете (Александр Ромашин, Вячеслав Малютин)
NoSQL - World IT Planet, Saint Petersburg 2015
Highload++ 2015
Отказоустойчивые решения SQL
«Битрикс24»: архитектура и эксплуатация высоконагруженного облачного сервиса
Soft layer IBM Cloud platform and GPU
Презентация Сафонова и Прусенка на семинаре "Продавайте больше"
24 hop sql_in_to_wa_1c _19march_2014_russian
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Bitrix24 (DevConf)
Tuning HighLoad J2EE web application
Введение в Apache Cassandra
Highload: проблемы и решения
Cassandra: быстрая запись данных в высоконагруженных системах
Резервное копирование и оптимизация хранения данных
Интеграция сайта с облачным хранилищем (Александр Демидов)
Максим Исаев, IBS. Практика использования комплекса Veritas NetBackup для мод...
 
Solit 2014, Обзор Infocloud для разработчиков, Трухин Юрий
Auditing HA/DR Сonfigurations
Ad

Viewers also liked (9)

PDF
Информационный центр StartUpSamara, С. Богданов
PPT
Что такое ИТ-кластер и как помогает конкуренции
PPTX
Кластерный портрет Петербурга: результаты мониторинга
PDF
Валерий Будный - новая структура кластера ювелиров
PDF
Skill will matrix
PDF
презентация Huawei
PPTX
Multi –skilled workforce slide (2)
XLS
skills matrix
PPTX
Skill matrix
Информационный центр StartUpSamara, С. Богданов
Что такое ИТ-кластер и как помогает конкуренции
Кластерный портрет Петербурга: результаты мониторинга
Валерий Будный - новая структура кластера ювелиров
Skill will matrix
презентация Huawei
Multi –skilled workforce slide (2)
skills matrix
Skill matrix
Ad

Similar to Веб-кластер (20)

PPTX
Презентация технологии веб-кластеров
PPTX
веб кластер
PPTX
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
PPTX
Clouds NN 2012 Александр Демидов "Битрикс24 архитектура и опыт эксплуатации о...
PPTX
DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...
PPTX
DUMP-2012 - Только хардкор! - "Архитектура и запуск облачного сервиса в Amazo...
PPTX
Andrii Bereznikov ITEM 2018
PDF
Готовые решения Cisco для построения «частного облака»
PPTX
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
PPTX
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
PPTX
(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...
PDF
VMware vSAN как платформа для высоконагруженных критичных для бизнеса приложений
PDF
Data line cloud solutions
PDF
CodeFest 2012. Рыжиков С. — Архитектура и запуск облачного сервиса в Amazon A...
PDF
Гибридные «облака»
PPTX
Что нового в 11.0?
PPTX
XS6, XA6.5, XD 5.5 main features overview.
PPT
Petrov Cloud for corporate customer
PPTX
Передовой опыт создания Инфраструктуры SharePoint
PDF
Максим Шапошников, Nutanix
Презентация технологии веб-кластеров
веб кластер
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
Clouds NN 2012 Александр Демидов "Битрикс24 архитектура и опыт эксплуатации о...
DUMP-2013 Serverside - Архитектура Битрикс24 в Amazon Web Services – изнутри ...
DUMP-2012 - Только хардкор! - "Архитектура и запуск облачного сервиса в Amazo...
Andrii Bereznikov ITEM 2018
Готовые решения Cisco для построения «частного облака»
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...
VMware vSAN как платформа для высоконагруженных критичных для бизнеса приложений
Data line cloud solutions
CodeFest 2012. Рыжиков С. — Архитектура и запуск облачного сервиса в Amazon A...
Гибридные «облака»
Что нового в 11.0?
XS6, XA6.5, XD 5.5 main features overview.
Petrov Cloud for corporate customer
Передовой опыт создания Инфраструктуры SharePoint
Максим Шапошников, Nutanix

More from 1С-Битрикс (20)

PDF
Bitrix24.Гонконг
PDF
Презентация версии Битрикс24.Таити 16 ноября 2017 г.
PDF
Презентация новой версии Битрикс24.Сингапур 13 апреля 2017 г.
PDF
«1С-Битрикс: Управление сайтом 17.0»
PPTX
Как работать на субподряде. Взгляд со стороны крупного агентства
PPTX
Бизнес с Битрикс24. Партнерская программа
PPTX
Бизнес-процессы в агентском бизнесе: сейчас или никогда!
PPTX
Как выстроить направление продаж и производства Битрикс24: основные ошибки
PPTX
Дзен-продажи. Как заработать на косяках Битрикса? Меняем отношение к явлению
PPTX
Как обеспечить свою студию квалифицированными кадрами
PPTX
Как всегда о налогах и не только
PPTX
Цифры, графики, вот это вот все
PDF
Конструирование продукта и комплексная стратегия маркетинга
PDF
Холакратия. Метрики. Ценности
PPTX
Сквозная аналитика: чтобы что?
PPTX
Уговоры, подарки, подкуп? Как получить хорошие публикации в СМИ
PPT
Удаленка. Почему мы от нее отказались
PPTX
Продажи с удовольствием! Как построить эффективную систему обучения менеджеро...
PPTX
Кого и как увольнять в первую очередь руководителю?
PPTX
Как защитить персональные данные в "облаке"?
Bitrix24.Гонконг
Презентация версии Битрикс24.Таити 16 ноября 2017 г.
Презентация новой версии Битрикс24.Сингапур 13 апреля 2017 г.
«1С-Битрикс: Управление сайтом 17.0»
Как работать на субподряде. Взгляд со стороны крупного агентства
Бизнес с Битрикс24. Партнерская программа
Бизнес-процессы в агентском бизнесе: сейчас или никогда!
Как выстроить направление продаж и производства Битрикс24: основные ошибки
Дзен-продажи. Как заработать на косяках Битрикса? Меняем отношение к явлению
Как обеспечить свою студию квалифицированными кадрами
Как всегда о налогах и не только
Цифры, графики, вот это вот все
Конструирование продукта и комплексная стратегия маркетинга
Холакратия. Метрики. Ценности
Сквозная аналитика: чтобы что?
Уговоры, подарки, подкуп? Как получить хорошие публикации в СМИ
Удаленка. Почему мы от нее отказались
Продажи с удовольствием! Как построить эффективную систему обучения менеджеро...
Кого и как увольнять в первую очередь руководителю?
Как защитить персональные данные в "облаке"?

Веб-кластер

  • 2. Сколько стоит 1 час?Крупный интернет-магазин с годовым оборотом 1.5 млрд. руб.
  • 3. 210 рабочих дней в году по 10 рабочих часов.
  • 4. Час простоя крупного интернет-проекта может обойтись владельцам в 0,3 - 1 миллион рублейупущенной выручки.Основные задачи, которые решает веб-кластер:Обеспечение высокой доступности сервиса (так называемые HA - High Availability или Failover кластеры)Масштабирование веб-проекта в условиях возрастающей нагрузки (HP - High Performance кластеры)Балансирование нагрузки, трафика, данных между несколькими серверамиСоздание целостной резервной копии данных для MySQL
  • 5. «Веб-кластер» обеспечивает непрерывность бизнеса, отказоустойчивость, масштабирование, распределение нагрузки.
  • 6. Любой новый или работающий проект на «1С-Битрикс: Управление сайтом» может быть представлен как веб-кластер взаимозаменяемых серверов.Приувеличениипосещаемостиможнобыстродобавить в кластерновыесервера.В случае выхода изстрояодногоизсерверовкластерасистемапродолжаетбеспрерывнообслуживатьКлиентов.Балансирование нагрузки, трафика, данных между несколькими серверами.Система позволяет снимать резервные копии со специально выделенных узлов кластера, не влияя на работу сайта.
  • 8. История производительности платформы2005 год – производительность стала существенной задачей для разработки.2007 год – появление инструментов отладки SQL-запросов. 2007 год – первое нагрузочное тестирование с QSOFT (1.5 млн. хитов в сутки на редакции «Бизнес», 6 млн. – на редакции «Старт»).2008-2010 годы – развернуто 4 конфигурации Oracle RAC с 4 серверами.2009 год – «монитор производительности» во всех редакциях продукта.2009-2010 годы – выпущены «1С-Битрикс: Виртуальная машина» и «1С-Битрикс: Веб-окружение».2008-2011 – сертификация хостинг-провайдеров.2010 год – рост производительности – на 430%! Новые нагрузочные тесты: 8.5 млн. хитов – «Бизнес», 12.4 млн. – «Старт», 85 млн. – «HTML кеш».
  • 9. +110%+430%За три года – на 430% быстрее!
  • 10. Варианты масштабирования до 10.0:Разделение на два сервера: веб-сервер + база данных.Увеличение мощности оборудования (чем мощнее – тем дороже; рост стоимости не пропорционален).Выделение кеша на один внешний сервер через memcached.Переход на Oracle (минимальная лицензия +5000$ за процессор).Создание Oracle RAC (Real Application Cluster). Проект – около 150 000$ (оборудование + лицензия + «общая полка»). Очень мало специалистов.Для большинства клиентов производительности достаточно, но не решены проблемы отказоустойчивости, резервирования, сетевой доступности.
  • 11. «1С-Битрикс: Веб-кластер» - это комбинация технологий:Вертикальный шардинг (вынесение модулей на отдельные серверы MySQL)Репликация MySQL (Oracle и MS SQL в дальнейшем) и балансирование нагрузки между серверамиРаспределенный кешданных (memcached)Непрерывность сессий между веб-серверами (хранение сессий в базе данных)Кластеризация веб-сервера:Синхронизация файловБалансирование нагрузки между серверами
  • 12. Тестовый веб-кластер – в «облаке» Amazon
  • 13. Аккаунтыa-mБаза данных MySQL 1База данных MySQL 1База данных MySQLБаза данных MySQLБаза данных MySQL 2База данных MySQL 2Аккаунты n-zВертикальный шардингГоризонтальный шардинг
  • 14. Вертикальный шардингРазделение одной базы данных веб-приложения на две и более базы данных за счет выделения отдельных модулей, без изменения логики работы веб-приложения:Веб-аналитика
  • 16. Примеры решений на веб-кластере:Масштабирование при росте нагрузки (MySQL)Веб-серверИнтенсивное использование клиентами поиска и статистики«1С-Битрикс:Управление сайтом»Выделенный сервер MySQLМодуль«Поиск»Модуль«Веб-аналитика»
  • 17. Примеры решений на веб-кластере:Масштабирование при росте нагрузки (MySQL)Выделенный сервер MySQLВеб-сервер«1С-Битрикс: Веб-кластер»Модуль«Поиск»Модуль«Веб-аналитика»Выделенный сервер MySQLВертикальныйшардинг«1С-Битрикс: Веб-кластер»
  • 18. Репликация и балансировка нагрузки MySQLГибкая балансировка нагрузки SQLПростота администрированияДешевое и быстрое неограниченное масштабированиеОнлайн бэкапНе требуется доработка логики веб-приложения
  • 20. Масштабирование при росте нагрузки MySQLВысокая посещаемостьВеб-серверВеб-приложениеВысокая нагрузка:~10^3 writes/sec~10^4 reads/sec1) Запросы обрабатываются только одним сервером СУБД2) CPU и дисковая подсистема СУБД – перегруженыБаза данных MySQL
  • 21. Масштабирование при росте нагрузки MySQLВеб-сервер«1С-Битрикс: Веб-кластер»MySQL replication, mixed-modeSQL-балансировщик1С-БитриксБаза данных MySQLSLAVE 1База данных MySQLSLAVE NБаза данных MySQLSLAVE …База данных MySQLMASTER
  • 22. Распределенный кеш данных (memcached)memcached1 memcached2memcached3Высокая эффективность - за счет централизованного использования кэша веб-приложениемНадежность - за счет устойчивости подсистемы кешировнияк выходу из строя отдельных компонентовНеограниченная масштабируемость - за счет добавления новых memcached-серверов.30%40%30%Веб-кластер «1С-Битрикс»Веб-серверВеб-серверВеб-сервер
  • 24. Непрерывность сессий между веб-серверамиПользовательская сессия должна быть "прозрачной" для всех серверов веб-кластера. После авторизации на одном из серверов пользователь должен считаться авторизованных и для всех других серверов.И наоборот - окончание сессии на любом сервере должно означать ее окончание на всех серверах сразу.
  • 25. Задача: масштабирование при росте нагрузкиВысокая посещаемостьВысокая нагрузка на CPU >80%Веб-серверВеб-приложение1) Нагрузка обрабатывается только одним веб-сервером2) CPU перегружен обработкой PHP, прекомпилятор включен, наблюдаются segmentation faultsБаза данных MySQL
  • 26. Задача: масштабирование при росте нагрузкиВысокая посещаемостьНагрузка на CPU <50%Балансировщик нагрузкиВеб-серверВеб-серверНода 1«1С-Битрикс: Веб-кластер»Авто-синхронизацияНода 2 «1С-Битрикс: Веб-кластер»База данных MySQL1) Нагрузка равномерно распределяется между нодами веб-кластера2) Сервера приложений не перегружены и работают в устойчивом штатном режиме
  • 27. Задача: масштабирование при росте нагрузкиОчень высокая посещаемостьБалансировщик нагрузкиНода 1 «1С-Битрикс:Веб-кластер»Нода 2«1С-Битрикс:Веб-кластер»…НодаN«1С-Битрикс:Веб-кластер»База данных MySQL
  • 29. Синхронизация дисковых системДва типа:1. Синхронный:Общая «дисковая полка» (дорого, не резервирует данные)
  • 30. Сетевые средства – NFS (очень медленно)
  • 31. OCFS2
  • 33. csync2Тип 1: общее хранилище данныхNAS (Network Attached Storage)NFS, SMB/CIFS, …. Просто, но медленно./var/wwwВеб-сервер 1Веб-сервер 2OCFS2, GFS2, …. Быстро, но сложно и дорого.SAN (Storage Area Network), «дисковая полка»/var/www
  • 34. Тип 2: синхронизация локальных дисковНода 2 «1С-Битрикс: Веб-кластер»Нода 1 «1С-Битрикс: Веб-кластер»Csync2Csync2/var/www/var/wwwНода 3«1С-Битрикс: Веб-кластер»Csync2/var/www
  • 35. Почему мы выбрали csync2?Быстрый доступ к файлам приложения за счет использования локальных хранилищ.Высокая скорость работы.Низкое потребление ресурсов (CPU, дисковые операции). Два этих фактора позволяют запускать процесс синхронизации максимально часто, поэтому данные на серверах становятся идентичными практически в "реальном времени".Простота настройки для обмена данными между любым количеством серверов.Возможность синхронизации удаления файлов.Защищенный обмен данными между хостами (SSL).
  • 36. Организация резервного копирования - MySQLОнлайн бэкап данныхБаза данных MySQLSLAVE NБаза данных MySQLMASTERcandidateВеб-серверDRBD – он-лайнбэкап диска с базой данных«1С-Битрикс: Веб-кластер»ДискБаза данных MySQLSLAVE 1База данных MySQLMASTERЦелостный логический/физический бэкапMySQL без замедления работы основной системы
  • 37. Организация резервного копирования - файлыLVMВеб-сервер/var/www –снепшот 1/var/www –снепшот 2«1С-Битрикс: Веб-кластер»/var/www –снепшот 3/var/wwwБыстрый, целостный бэкапна уровне LinuxБыстрый, целостный, инкрементальный, автоматически консолидирумыйбэкап инструментами хостера
  • 38. Мы работаем над…круговой, асинхронной,master-master репликациейдля обеспечения работы географически распределенных веб-кластеров 1С-Битрикс«1С-Битрикс: Веб-кластер», ДЦ в Москве«1С-Битрикс: Веб-кластер», ДЦ в НовосибирскеВеб-нодаВеб-нодаКэшКэш«1С-Битрикс: Веб-кластер», ДЦ в Нью-ЙоркеБДБДВеб-нодаКэшБД
  • 39. Мы работаем над…круговой, асинхронной,master-master репликациейдля обеспечения работы географически распределенных веб-кластеров 1С-Битрикс«1С-Битрикс: Веб-кластер», ДЦ в Москве«1С-Битрикс: Веб-кластер», ДЦ в НовосибирскеВеб-нодаВеб-нодаВеб-нодаВеб-нодаВеб-нодаВеб-нодаКэшКэшКэшКэшКэшКэш«1С-Битрикс: Веб-кластер», ДЦ в Нью-ЙоркеБДБДБДБДБДБДВеб-нодаВеб-нодаВеб-нодаКэшКэшКэшБДБДБД
  • 40. «Живой» «Веб-кластер» в Амазоне!Поехали! 
  • 41. Балансировщик (клиентские запросы по HTTP)Веб-сервер 1Веб-сервер 2memcached 1memcached 1MySQLmasterMySQLslave
  • 42. Устойчивость системы при выключении узлов веб-кластераНагрузочный тест – отключение одного из узлов кластераПри отключении узлов кластера система не прерывает обслуживание клиентов.Увеличивается очередь (растет время отдачи страниц клиентам), однако в целом система сбалансирована по нагрузке.Обратное добавление узла веб-кластера пропорционально увеличивает производительность системы.
  • 43. Руководство по настройке и администрированию«1С-Битрикс: Веб-кластер»:http://www.1c-bitrix.ru/download/manuals/ru/web-cluster_guide.pdf