distributed-computing/tasks/lyamzina-ma/lab_7/README.md
2023-12-18 18:48:23 +04:00

23 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Отчет по лабораторной работе №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, который позволяет использовать его для балансировки нагрузки.
Балансировка нагрузки на базах данных осуществляется различными способами. Горизонтальное масштабирование предполагает распределение данных и запросов между несколькими серверами базы данных для более равномерной нагрузки и повышения производительности. Репликация - это создание и синхронизация копий базы данных для обработки запросов с разных серверов. Это не только повышает отказоустойчивость, но и увеличивает пропускную способность системы.
Реверс-прокси является важным элементом балансировки нагрузки. Он действует как посредник между клиентами и серверами. Вместо того, чтобы клиенты напрямую обращались к серверам, они отправляют запросы на реверс-прокси, который, исходя из выбранного алгоритма балансировки нагрузки, перенаправляет их на один из доступных серверов. Это помогает распределить нагрузку равномерно и повысить производительность системы.