putilin_pavel_lab_7 #344

Merged
Alexey merged 2 commits from putilin_pavel_lab_7 into putilin_pavel_lab_6 2025-01-02 12:43:42 +04:00

View File

@ -0,0 +1,22 @@
## Эссе
Для балансировки нагрузки в распределённых системах используются различные алгоритмы и методы,
включая "круговую" (round-robin) и на основе минимальной нагрузки.
Первый метод направляет запросы по очереди на все серверы, второй —
направляет запросы на сервер с наименьшей текущей нагрузкой. Т акже используется алгоритм на основе хеширования,
при котором запросы направляются на сервер в зависимости от хеша параметров запроса,
что позволяет обеспечить распределение нагрузки более предсказуемо.
Открытые технологии для балансировки нагрузки включают Nginx, HAProxy и Apache HTTP Server.
Эти решения позволяют распределять нагрузку на несколько серверов, обеспечивая отказоустойчивость и масштабируемость приложений.
Эти технологии поддерживают различные методы балансировки, такие как круговая и на основе сессий.
Балансировка нагрузки на базах данных часто осуществляется с использованием репликации и шардирования.
Репликация позволяет распределить запросы на чтение между несколькими репликами базы данных, а шардирование делит базу данных на части (шарды),
каждая из которых обрабатывает часть запросов. Важно обеспечить консистентность данных при такой балансировке,
что достигается с помощью различных механизмов синхронизации и транзакций.
Реверс-прокси является важным элементом балансировки нагрузки.
Он принимает входящие запросы и перенаправляет их на соответствующие серверы.
Такой подход позволяет скрыть реальную инфраструктуру от пользователей, улучшить безопасность,
а также обеспечить централизованный контроль над нагрузкой, кэшированием и аутентификацией