distributed-computing/tasks/lyamzina-ma/lab_7/README.md

23 lines
3.9 KiB
Markdown
Raw Normal View History

2023-12-18 18:48:23 +04:00
# Отчет по лабораторной работе №7
Выполнила студентка гр. ИСЭбд-41 Лямзина М.А.
## Задачи
Написать небольшое эссе (буквально несколько абзацев) своими словами. А помогут Вам в этом вопросы из списка:
1. Какие алгоритмы и методы используются для балансировки нагрузки?
2. Какие открытые технологии существуют для балансировки нагрузки?
3. Как осуществляется балансировка нагрузки на базах данных?
4. Реверс-прокси как один из элементов балансировки нагрузки.
## Эссе
Алгоритмы и методы балансировки нагрузки разнообразны и зависят от конкретных требований и характеристик системы. Некоторые из них включают Round-Robin, Weighted Round-Robin, Least Connections и IP Hashing. Round-Robin последовательно направляет запросы к серверам, а Weighted Round-Robin делает это пропорционально весу серверов. Least Connections выбирает сервер с наименьшим количеством активных соединений, а IP Hashing обеспечивает постоянное направление запросов с одинаковым IP-адресом на один и тот же сервер.
Существует множество открытых технологий для балансировки нагрузки. Наиболее популярными из них являются HAProxy, Nginx и Apache. HAProxy - это высокопроизводительный балансировщик нагрузки с открытым исходным кодом. Nginx, помимо функциональности веб-сервера, также может выполнять функции балансировщика нагрузки. Apache предлагает модуль mod_proxy_balancer, который позволяет использовать его для балансировки нагрузки.
Балансировка нагрузки на базах данных осуществляется различными способами. Горизонтальное масштабирование предполагает распределение данных и запросов между несколькими серверами базы данных для более равномерной нагрузки и повышения производительности. Репликация - это создание и синхронизация копий базы данных для обработки запросов с разных серверов. Это не только повышает отказоустойчивость, но и увеличивает пропускную способность системы.
Реверс-прокси является важным элементом балансировки нагрузки. Он действует как посредник между клиентами и серверами. Вместо того, чтобы клиенты напрямую обращались к серверам, они отправляют запросы на реверс-прокси, который, исходя из выбранного алгоритма балансировки нагрузки, перенаправляет их на один из доступных серверов. Это помогает распределить нагрузку равномерно и повысить производительность системы.