[Л/Р 2] Михайлов Юрий #177

Merged
v.moiseev merged 9 commits from YuriMikhailov/distributed-computing:mikhailov-ys-lab-2 into main 2024-01-08 18:01:45 +04:00
Showing only changes of commit 3b66993f66 - Show all commits

View File

@ -0,0 +1,13 @@
Выполнил: студент гр. ИСЭбд-41 Михайлов Ю.С.
Балансировкой нагрузки называется распределение нагрузки между обрабатывающими элементами распределенной системы. Она используется для того, чтобы каждый элемент не перегружался и не простаивал во время работы программы (системы), т.е. для максимизации пропускной способности системы.
Для балансировки нагрузки применяются различные алгоритмы и методы. Один из наиболее распространенных алгоритмов - "Round Robin" или круговая перестановка. Он работает по принципу равного распределения запросов между серверами, при этом каждый следующий запрос отправляется на следующий сервер из списка. Еще один алгоритм - "Least Connection" или выбор сервера с наименьшим количеством активных соединений. Этот метод позволяет распределить нагрузку более равномерно, учитывая текущую загруженность серверов.
Существует также несколько открытых технологий для балансировки нагрузки. Один из них - Nginx, который может использоваться в качестве прокси-сервера и обеспечивать балансировку нагрузки между несколькими серверами. Еще один популярный инструмент - Apache Load Balancer, который также предоставляет возможность распределения запросов между серверами на основе различных алгоритмов.
Процесс балансировки нагрузки на базах данных отличается от балансировки на серверах. В случае баз данных одной из основных задач является выбор правильного метода распределения запросов. Некоторые из распространенных методов - "широковещательная репликация", при которой каждый запрос реплицируется на все доступные серверы, и "разделение по ключам", при котором данные разделяются на разные серверы на основе ключей или хеш-функций.
Реверс-прокси также является важным элементом балансировки нагрузки. Он действует как посредник между клиентами и серверами, принимая запросы от клиентов и перенаправляя их на нужные серверы. Реверс-прокси обычно используется для обработки статических ресурсов, кэширования данных и предоставления защиты от вредоносных атак.
В целом, балансировка нагрузки - это важный аспект проектирования и обеспечения работы современных IT-систем. В ее основе лежат различные алгоритмы и методы, такие как круговая перестановка и выбор сервера с наименьшей загруженностью. Открытые технологии, такие как Nginx и Apache Load Balancer, предоставляют средства для реализации балансировки нагрузки. А использование реверс-прокси помогает эффективно управлять трафиком и обеспечивать надежность системы.