Merge pull request 'morozov_vladimir_lab_7 is ready' (#189) from morozov_vladimir_lab_7 into main
Reviewed-on: #189
This commit is contained in:
commit
8985b761bd
34
morozov_vladimir_lab_7/readme.md
Normal file
34
morozov_vladimir_lab_7/readme.md
Normal file
@ -0,0 +1,34 @@
|
||||
# Лабораторная работа #7 - Балансировка нагрузки в распределённых системах при помощи открытых технологий на примерах
|
||||
|
||||
|
||||
### Балансировка нагрузки
|
||||
Балансировка нагрузки - это распределение сетевого трафика между серверной аппаратурой, которая поддерживает работу некоторого сетевого ресурса, к примеру сайта.
|
||||
Что дает балансировка нагрузки?
|
||||
- Увеличивает надежность ресурса, так как позволяет ему оставаться "на плаву", когда спрос на него резко возрастает
|
||||
- Увеличивет эффективность использования ресурса
|
||||
- Обеспечивает более гибкую масштабируемость по горизонтали
|
||||
### Алгоритмы и методы используются балансировки нагрузки
|
||||
Есть 3 вида балансировки по уронявм OSI:
|
||||
- Сетевой, который заключается в использовании нескольких физических серверов, которые вместе могут обрабатывать один запрос
|
||||
- Транспортный, который заключается в представлении посредника между сервером и клиентом
|
||||
- Прикладной, который заключается в использовании посредника между сервером и клиентом, а также в распределении обязанностей между серверами
|
||||
|
||||
Алгоритмы балансировки:
|
||||
- Round Robin (По-круговой). Все запросы будут поочередно распределяться на имеющиеся серверы. Просто и эффективно, НО алгоритм не учитывает мощность каждого сервера
|
||||
- Weighted Round Robin. Как предыдущий, но теперь алгоритм учитывает мощность каждого сервера и в зависимости от этого может назначать на более мощный сервер больше запросов.
|
||||
- Least Connections. (Наименьшее количество подключений). Последующие запросы будут распределены на менее загруженные серверы.
|
||||
- Least Response Time (Наименьшее время отклика). Последующие запросы будут распределены на менее загруженный сервер, у которого время среднего отклика максимален
|
||||
- Sticky Sessions. В зависимости от ip каждый пользователь будет прикреплен к определенному серверу.
|
||||
|
||||
Типы балансировки нагрузки:
|
||||
- Аппаратный. Использование специального аппаратного оборудования со спец ПО
|
||||
- Программное обеспечение. ПО, которое работает с виртуальными серверами и распределяет нагрузку между ними
|
||||
- Виртуальный. Объединение двух предыдущих типов.
|
||||
- Облачный. Использование облачных инфраструктуры.
|
||||
### Как осуществляется балансировка нагрузки на базах данных?
|
||||
Можно выделить несколько способов:
|
||||
1) Создание нескольких серверов бд, которые будут вместе обрабатывать один запрос. Здесть стоит сказать, что сервера получатют роли, один сервер может только читать данные из бд, а другой может уже вписывать данные в бд.
|
||||
2) Использование индексов в бд, для ускорения работы бд
|
||||
3) Иметь запасной бд сервер, который будет подключен в случае увеличения нагрузки
|
||||
### Реверс-прокси как один из элементов балансировки нагрузки.
|
||||
Понятия балансировщик нагрузки и реверс-прокси можно назвать взаимозаменяемыми, так как оба выполняют одну функцию: распределют запросы клиента между серверами и возвращает ему ответ.
|
Loading…
Reference in New Issue
Block a user