aleikin_artem_lab_7 #228

Open
aleyckin wants to merge 2 commits from aleikin_artem_lab_7 into main
Showing only changes of commit f72aa9a504 - Show all commits

View File

@ -0,0 +1,24 @@
# Лабораторная работа 7 - Балансировка нагрузки в распределённых системах при помощи открытых технологий на примерах
## ПИбд-42 || Алейкин Артем
### Определение балансировки нагрузки - процесс равномерного распределения запросов на разные узлы сервера для избежания перегрузки одного.
#### Алгоритмы и методы балансировки нагрузки
> 1. Round Robin (круговой): запросы распределяются по серверам последовательно.
> 2. Least Connections: запрос отправляется серверу с наименьшим количеством активных соединений.
> 3. Weighted Round Robin: серверам назначаются веса, которые определяют, сколько запросов каждый сервер может обработать.
#### Открытые технологии для балансировки нагрузки
> Nginx - самый популярный инструмент - работает как прокси сервер, а так же поддерживает алгоритмы балансировки.
> HAProxy
> Azure
#### Балансировка на базах данных
Один из подходов — разделение нагрузки на чтение и запись:
Запросы на чтение отправляются на реплики базы данных (read replicas).
Запросы на запись направляются на основную базу данных (master).
#### Реверс-прокси
Реверс-прокси выполняет роль посредника между клиентами и серверами, скрывая внутреннюю инфраструктуру и обеспечивая балансировку нагрузки.
Например, NGINX, работающий как реверс-прокси, может распределять запросы по серверам, кешировать данные, а также защищать систему от атак, таких как DDoS.
Преимущество реверс-прокси в том, что он объединяет множество функций: от балансировки до безопасности и ускорения доставки контента.