distributed-computing/tasks/mikhailov-ys/lab_7/README.md
2024-01-07 00:04:25 +04:00

3.6 KiB
Raw Blame History

Отчет по лабораторной работе №7

Выполнил студент гр. ИСЭбд-41 Михайлов Ю.С.

Эссе на тему балансировки нагрузки

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

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

  • раунд-робин, или по круговороту; запросы распределяются по серверам ко кругу
  • взвешенное распределение, то есть с помощью весовых коэффициентов
  • на основе состояния, здесь учитывается загрузка сервера

Данные платформы включают в себя не только балансировку нагрузки, но и кэширование, оптимизацию и шифрование.

Процесс балансировки нагрузки на базах данных отличается от балансировки на серверах.важно принимать во внимание особенности SQL и NoSQL баз данных и выбрать один из методов распределения запросов. Такие как:

  • репликация, когда запрос копируется на доступные серверы
  • шардинг, такое разделение данных на несколько независимых фрагментов (шардов)
  • кластеризация, объединение нескольких баз данных

Также существуют открытие технологии для балансировки, которые позволяют управлять трафиком в различных средах. Например, Nginx, HAProxy, и Apache HTTP Server с модулем mod_proxy_balancer. Эти решения обеспечивают стабильное и эффективное распределение запросов в системе, что улучшает производительность и отказоустойчивость.

Балансировка нагрузки в базах данных является важным аспектом для обеспечения эффективной работы и предотвращения перегрузок на отдельных узлах или серверах. Для этого используются различные методы: репликация данных (создание копий), шардирование (разбиение БД на фрагменты), горизонтальное (добавление узлов) и вертикальное масштабирование (увеличение производительности узлов).

Реверс-прокси в балансировке нагрузки — посредник между клиентами и серверами, распределяет запросы, маршрутизирует трафик, обеспечивает отказоустойчивость, централизованное управление трафиком и кэширование.