.. | ||
README.md |
Лабораторная работа №7
Балансировка нагрузки в распределённых системах при помощи открытых технологий
Эссе
Алгоритмы и методы балансировки нагрузки
Балансировка нагрузки обеспечивает равномерное распределение запросов между узлами системы. Основные алгоритмы включают:
- Round Robin – запросы направляются узлам по очереди.
- Least Connections – выбирается узел с наименьшим числом активных соединений.
- Hashing – распределение на основе хэширования, например, IP-адреса клиента.
- Weighted Distribution – узлам присваиваются веса в зависимости от их мощности.
Открытые технологии для балансировки нагрузки
Среди открытых технологий популярны:
- NGINX – легковесный реверс-прокси, поддерживающий множество алгоритмов.
- HAProxy – высокопроизводительный инструмент для балансировки TCP/HTTP трафика.
- Traefik – современный балансировщик, оптимизированный для работы с микросервисами.
Балансировка нагрузки на базах данных
Для баз данных применяются подходы типа репликации и шардинга.
Репликация создает копии данных на нескольких серверах, и запросы могут обрабатываться на ближайшей копии.
Шардинг делит данные на части, каждая из которых хранится на отдельном сервере, что позволяет распределять нагрузку.
Реверс-прокси как элемент балансировки
Реверс-прокси (например, NGINX) выступает посредником между клиентами и серверами. Он принимает запросы, перенаправляет их на доступные серверы, а также может выполнять кэширование и SSL-терминацию, уменьшая нагрузку на конечные узлы.