distributed-computing/tasks/dunaev-oi/README.md
2023-12-18 18:34:33 +04:00

23 lines
5.1 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. Реверс-прокси как один из элементов балансировки нагрузки.
## Эссе
Балансировка нагрузки это важный процесс в сфере информационных технологий, который позволяет равномерно распределять нагрузку между компьютерами, серверами или другими ресурсами для обеспечения оптимальной производительности системы. В данном эссе я рассмотрю несколько вопросов, связанных с алгоритмами и методами балансировки нагрузки, открытыми технологиями, а также балансировкой нагрузки на базах данных и использованием реверс-прокси.
Первый вопрос касается алгоритмов и методов, используемых для балансировки нагрузки. Существует несколько подходов, таких как раунд-робин, весовая нагрузка, наименьшее количество соединений и IP хэширование. Раунд-робин распределяет запросы по всем доступным серверам одинаковым образом. Весовая нагрузка позволяет приоритезировать определенные серверы и передавать им больше запросов. Наименьшее количество соединений выбирает сервер с наименьшим количеством активных соединений. IP хэширование использует IP-адрес клиента для определения сервера, который будет обрабатывать его запросы.
Второй вопрос касается открытых технологий для балансировки нагрузки. Среди них можно выделить HAProxy, NGINX, Apache HTTP Server и AWS Elastic Load Balancer. HAProxy является высокопроизводительным реверс-прокси, который поддерживает различные алгоритмы балансировки нагрузки. NGINX также является реверс-прокси и обладает возможностями балансировки нагрузки. Apache HTTP Server предоставляет модуль mod_proxy_balancer для балансировки нагрузки. AWS Elastic Load Balancer предоставляет гибкую и масштабируемую балансировку нагрузки в облачной среде.
Третий вопрос касается балансировки нагрузки на базах данных. Для балансировки нагрузки на базах данных используются различные методы, такие как горизонтальное шардирование, репликация и кэширование. Горизонтальное шардирование разделяет данные на несколько фрагментов и распределяет их по разным серверам. Репликация создает копии базы данных на разных серверах для обработки запросов. Кэширование позволяет хранить результаты часто используемых запросов для улучшения производительности.
Реверс-прокси является важным элементом балансировки нагрузки. Он работает на стороне сервера и перенаправляет запросы с клиента на разные серверы в зависимости от текущей нагрузки. Реверс-прокси предоставляет централизованную точку контроля над серверами, обеспечивает отказоустойчивость и улучшает производительность системы.