DAS_2024_1/emelyanov_artem_lab_7/Readme.md

24 lines
2.0 KiB
Markdown
Raw Permalink Normal View History

2024-10-19 18:00:48 +04:00
# Балансировка нагрузки в распределённых системах
>Балансировка нагрузки - распределение сетевых или вычислительных нагрузок между несколькими серверами или ресурсами для оптимизации производительности, надежности и времени отклика.
Существуют такие **алгоритмы** для балансировки нагрузки, как:
- **Round Robin** — запросы идут по очереди на серверы.
- **Least Connections** — запрос направляется на сервер с наименьшей загрузкой.
- **Weighted Round Robin** — учитывает мощность серверов.
Ну и одними из популярных **технологий**, являются:
- **NGINX** и **HAProxy** — балансировщики на уровне HTTP/TCP.
- **Kubernetes Ingress** — управляет балансировкой в контейнерных средах.
Также можно осуществить балансировку нагрузки на **базах данных**, с помощью:
- **Чтение/Запись с репликами** — чтение с реплик, запись в мастер.
- **Шардинг** — деление данных по узлам.
- **PgBouncer** — управление пулами соединений.
Для балансировки нагрузки также можно использовать **реверс-прокси**.
>Реверс-прокси - это сервер, который принимает клиентские запросы и перенаправляет их на соответствующие внутренние сервера. Также он может быть использован для балансировки, кэширования и безопасности.