DAS_2024_1/emelyanov_artem_lab_7
2024-10-26 11:34:21 +04:00
..
.idea fix: delete .idea 2024-10-19 18:03:24 +04:00
Readme.md feature: completed lab 7 2024-10-19 18:00:48 +04:00

Балансировка нагрузки в распределённых системах

Балансировка нагрузки - распределение сетевых или вычислительных нагрузок между несколькими серверами или ресурсами для оптимизации производительности, надежности и времени отклика.

Существуют такие алгоритмы для балансировки нагрузки, как:

  • Round Robin — запросы идут по очереди на серверы.
  • Least Connections — запрос направляется на сервер с наименьшей загрузкой.
  • Weighted Round Robin — учитывает мощность серверов.

Ну и одними из популярных технологий, являются:

  • NGINX и HAProxy — балансировщики на уровне HTTP/TCP.
  • Kubernetes Ingress — управляет балансировкой в контейнерных средах.

Также можно осуществить балансировку нагрузки на базах данных, с помощью:

  • Чтение/Запись с репликами — чтение с реплик, запись в мастер.
  • Шардинг — деление данных по узлам.
  • PgBouncer — управление пулами соединений.

Для балансировки нагрузки также можно использовать реверс-прокси.

Реверс-прокси - это сервер, который принимает клиентские запросы и перенаправляет их на соответствующие внутренние сервера. Также он может быть использован для балансировки, кэширования и безопасности.