Merge pull request 'л/р 7 Юденичева Дарья' (#171) from d.yudenicheva/distributed-computing:yudenicheva-ds-lab-7 into main

Reviewed-on: http://student.git.athene.tech/v.moiseev/distributed-computing/pulls/171
This commit is contained in:
Vladislav Moiseev 2023-12-21 00:20:08 +04:00
commit af99c16b2f

View File

@ -0,0 +1,52 @@
# Отчет по лабораторной работе №7
Выполнила студентка гр. ИСЭбд-41 Юденичева Д.С.
## Задачи
Написать небольшое эссе (буквально несколько абзацев) своими словами. А помогут Вам в этом вопросы из списка:
1. Какие алгоритмы и методы используются для балансировки нагрузки?
2. Какие открытые технологии существуют для балансировки нагрузки?
3. Как осуществляется балансировка нагрузки на базах данных?
4. Реверс-прокси как один из элементов балансировки нагрузки.
## Эссе
Балансировка нагрузки предполагает, что у вебмастера есть в распоряжении несколько серверов (реальных или виртуальных), которые образуют кластер, или по-другому пул. Метод балансировки позволяет распределять нагрузку между серверами из пула.
Необходимо опираться на общие принципы при выборе алгоритма:
-Каждый запрос должен обрабатываться, нельзя допускать, чтобы запросы стояли в очереди. Поэтому необходимо проверить нагрузку на сервер в динамике.
-Все серверы из пула должны работать. Это не всегда достижимо, и задача алгоритма распределить нагрузку максимально равномерно.
-Хороший алгоритм обеспечивает быструю обработку.
Алгоритмы:
-Round Robin
-Lest Connections
-Sticky Sessions
-Weighted Round Robin
Сущетсвует ряд открытых технологий для балансировки нагрузки:
-NGINX используют для создания крупномасштабных веб-сервисов с высокой доступностью. Также можно использовать в различных сценариях развертывания в качестве очень эффективного балансировщика нагрузки HTTP .
-Apache HTTP Server. Если у вас есть несколько бэкенд-серверов, будет хорошей идеей при использовании прокси распределить трафик между ними. Сделать это можно при помощи функции балансировки нагрузки утилиты mod_proxy.
Балансировка нагрузки на базах данных:
-При репликации балансировка нагрузки распределяет запросы от пользователей по разным копиям базы данных. Это позволяет выполнять большее количество запросов одновременно. При падении одной СУБД ее запросы будет обслуживать другая копия.
-При шардировании происходит деление данных на разные фрагменты.
-При кластеризации несколько серверов объединяются в кластер, где нагрузка между ними распределяется при помощи комплекса специальных методов, называемых балансировкой.
Реверсивные прокси-серверы — программные средства защиты, которые составляют первый защитный бастион на пути запроса от пользователя к интернет-ресурсу, расположенному на веб-сервере. Применение таких реверс-прокси позволяет обеспечивать отказоустойчивость, оптимизировать производительность и улучшать управляемость трафиком в сети.