.. | ||
readme.md |
Лабораторная работа № 7. Балансировка нагрузки в распределённых системах при помощи открытых технологий на примерах
Задание
Написать небольшое эссе (буквально несколько абзацев) своими словами (пожалуйста не пользуйтесь гуглом :). А помогут Вам в этом вопросы из списка:
- Какие алгоритмы и методы используются для балансировки нагрузки?
- Какие открытые технологии существуют для балансировки нагрузки?
- Как осуществляется балансировка нагрузки на базах данных?
- Реверс-прокси как один из элементов балансировки нагрузки.
Балансировка нагрузки
Балансировка нагрузки распределяет запросы между серверами для повышения производительности и устойчивости. Популярные алгоритмы:
- Round Robin — поочередное распределение запросов.
- Least Connections — выбор наименее загруженного сервера.
- Weighted Round Robin — учет мощности сервера при распределении.
Технологии
Для реализации используются инструменты, такие как:
- NGINX — веб-сервер и реверс-прокси с функциями балансировки.
- HAProxy — высокопроизводительный прокси для сложных сценариев.
- Traefik — интеграция с контейнерными оркестраторами.
Балансировка нагрузки в базах данных
Для распределения нагрузки в базах данных применяют:
- Репликация:
- Мастер-слейв — чтение с реплик, запись через мастер.
- Мастер-мастер — запись и чтение на нескольких серверах.
- Инструменты: ProxySQL для динамического распределения запросов.
Реверс-прокси
Реверс-прокси, например NGINX, принимает клиентские запросы и перенаправляет их на серверы. Это улучшает:
- Производительность.
- Безопасность.
- Скрытие внутренней архитектуры системы.