6  /  22

Выбор архитектуры проекта

Просмотров: 18296
Дата последнего изменения: 23.09.2021
Сложность урока:
3 уровень - средняя сложность. Необходимо внимание и немного подумать.
1
2
3
4
5

Когда требования правильно сформулированы, важно подобрать оптимальную архитектуру кластера Архитектура реализуется с помощью модуля Вебкластер.
Подробнее...
. Чтобы она максимально соответствовала проекту и обеспечивала приемлемую сложность эксплуатации.

Рассмотрим типовые схемы архитектур веб-проектов:

  Полные ноды

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

Недостатки – трудоемкость и относительная негибкость масштабирования. Особенно, когда нагрузка на разные роли кластера растет неравномерно.

Плюсы:

  • Нужно минимум 2 сервера
  • Максимальное использование (утилизация) возможностей серверов
  • Простота и понятность
  • Необходимое количество оборудования для реализации минимально

Минусы:

  • Маленькая скорость добавления ресурсов.
  • Низкая гибкость распределения нагрузки (в случае перекоса на одну из ролей Web/БД).

Рекомендации к применению:

  • Обеспечение отказоустойчивости с минимальными ресурсами, особенно при использовании Master - Master репликации.
  • Обработка высокой нагрузки с минимальным количеством ресурсов.

  Раздельные ноды

Позволяют гибко масштабировать кластер: подстраиваются под внешние изменения трафика, учитывают неравномерность нагрузки на различные роли. Разделение ролей по разным серверам помогает быстро масштабировать систему.

Плюсы:

  • Гибко и просто масштабируется под различные профили нагрузки
  • Высокая скорость добавления ресурсов

Минусы:

  • Необходимо минимум 4 сервера
  • Меньшая степень утилизации ресурсов сервера
  • Сложная архитектура

Рекомендации к применению:

  • Поддерживать высокую производительность системы.
  • Обеспечивать отказоустойчивость.
  • Обрабатывать частые пиковые нагрузки.
  • Масштабировать ресурсы с циклическими изменениями нагрузки.

  Гео кластер

Географически распределенный кластер применяется для обеспечения высокой степени отказоустойчивости проекта. Это происходит за счет полного дублирования проекта в территориально разделенных ДЦ.

Такой подход позволяет поддерживать работу проекта даже при полном падении одного из ДЦ. При этом в основе могут лежать перечисленные выше архитектуры. К примеру, для варианта архитектуры «полные ноды» организация географически распределенного кластера потребует только 2 сервера.

  Гибридные архитектуры

При развитии кластера для решения новых задач могут возникать различные сочетания архитектур. Распространенный вариант – дополнение архитектуры «полных нод» дополнительными slave-серверами или серверами memcached, sphinx.


1
Курсы разработаны в компании «1С-Битрикс»