DAS_2023_1/basharin_sevastyan_lab_7/README.md

32 lines
3.7 KiB
Markdown
Raw Permalink 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.

## Лабораторная работа 6. Вариант 5.
### Задание
Написать небольшое эссе (буквально несколько абзацев) своими словами. А помогут Вам в этом вопросы из списка:
- Какие алгоритмы и методы используются для балансировки нагрузки?
- Какие открытые технологии существуют для балансировки нагрузки?
- Как осуществляется балансировка нагрузки на базах данных?
- Реверс-прокси как один из элементов балансировки нагрузки.
### Результат
Балансировка нагрузки в распределенных системах это метод равномерного распределения сетевого трафика по пулу
ресурсов, поддерживающих приложение. Для достижения этой цели применяются разнообразные алгоритмы и методы.
Один из наиболее простых алгоритмов "Round Robin" предполагает равномерное распределение запросов между серверами.
Это эффективное решение в случае, когда все серверы в сети имеют схожую производительность. В то время как алгоритм
"Least Connections" предоставляет балансировку с учетом активных соединений, предпочитая сервер с наименьшим количеством
активных запросов.
Открытые технологии, предназначенные для балансировки нагрузки, играют ключевую роль в обеспечении стабильности
распределенных систем. HAProxy, Nginx и Apache HTTP Server с модулем mod_proxy_balancer предоставляют гибкие средства
для распределения запросов. Эти инструменты способны учитывать различные параметры, такие как загрузка сервера и
доступность, обеспечивая тем самым эффективную работу системы.
В контексте баз данных вопрос балансировки нагрузки становится не менее важным. Горизонтальное масштабирование,
шардирование данных и репликация служат ключевыми методами. Технологии, такие как MySQL Cluster, MongoDB с шардингом и
PostgreSQL с потоковой репликацией, обеспечивают эффективное распределение нагрузки и обеспечивают отказоустойчивость
баз данных.
Реверс-прокси, например, в лице Nginx или Apache HTTP Server, выступает важным звеном в балансировке нагрузки. Эти
инструменты предоставляют единый точку входа для клиентов, обеспечивают SSL терминацию, кэширование и управление
сеансами, что делает их неотъемлемыми компонентами для обеспечения стабильной работы распределенных систем.