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