DAS_2024_1/rogashova_ekaterina_lab_7/readme.md

27 lines
4.3 KiB
Markdown
Raw Normal View History

2024-11-18 14:20:48 +04:00
# Лабораторная работа №7
## Балансировка нагрузки в распределённых системах при помощи открытых технологий на примерах
Балансировка нагрузки - это про распределение рабочих нагрузок с целью оптимизации, повышения производительности системы.
Основные алгоритмы и методы балансировки нагрузки:
Круговая маршрутизация (запрашивает каждую из машин по очереди) - данный метод не учитывает нагрузку серверов, что может привести к перегрузке, но зато он очень простой в исполнении.
Метод Минимального количества подключений (запросы идут на менее загруженный сервер) - закрывает недостаток предыдущего метода, так как в таком случае мы избегаем перегрузки.
Взвешенный круговой алгоритм(запросы идут на сервер с наименьшим временем отклика) - алгоритм основен на круговом, но более совершенствованный. С помощью него можно обойти перегрузку, так как учитывается производительность серверов.
Также есть динамические алгоритмы балансировки, которые будут подстраиваться под текущую загрузку и производительность серверов.
Для реализации балансировки технологий можно использовать следующие технологии:
1. Nginx (широко используется в веб-приложениях)
2. Kubernetes
3. Apache HTTP-сервер
4. Другие
Выбор технологии зависит от множества факторов, таких как: размер и архитектура системы, требования к производительности и тд.
На базах данных можно использовать шардинг или кэширование.
Шардинг помогает распределить данные по нескольким серверам, тем самым увеличивая масштабируемость и производительность, в то время как кэширование оптимизирует доступ к часто запрашиваемым данным, уменьшая нагрузку на базу данных и ускоряя обработку запросов.
Реверс-прокси действует как посредник между клиентом и сервером. Он скрывает серверную инфраструктуру, выполняет балансировку нагрузки, кэширует ответы с сервера, а также может отвечать за безопасность.
Этот сервер принимает запросы от клиентов и перенаправляет их на соответствующие серверы. Это позволяет равномерно распределять нагрузку, чтобы избежать перегрузок какого-либо сервера. Также, если случился сбой на сервере реверс-прокси может автоматически перенаправлять все на работающие сервер.
Балансировка нагрузки - ключевой элемент современных вычислительных систем. Она помогает улучшить производительность, гарантирует высокую доступность и устойчивость систем к сбоям.
Правильная балансировка нагрузки путь к успешной работе сервисов и приложений.