32 lines
3.9 KiB
Markdown
32 lines
3.9 KiB
Markdown
|
# Лабораторная работа 7. Балансировка нагрузки в распределённых системах при помощи открытых технологий на примерах
|
|||
|
### Задание на лабораторную работу
|
|||
|
Написать небольшое эссе (буквально несколько абзацев) своими словами.
|
|||
|
|
|||
|
1. Какие алгоритмы и методы используются для балансировки нагрузки?
|
|||
|
2. Какие открытые технологии существуют для балансировки нагрузки?
|
|||
|
3. Как осуществляется балансировка нагрузки на базах данных?
|
|||
|
4. Реверс-прокси как один из элементов балансировки нагрузки.
|
|||
|
***
|
|||
|
### Эссе
|
|||
|
Балансировка нагрузки в распределённых системах применяется применяется для обеспечения равномерного распределения
|
|||
|
работы и ресурсов между компонентами системы. Это позволяет достичь повысить отказоустойчивость и обеспечить высокую
|
|||
|
роизводительность системы. Для достижения равномерного распределения нагрузки используются различные алгоритмы и методы.
|
|||
|
|
|||
|
Алгоритмы для балансировки нагрузки:
|
|||
|
- циклический перебор (распределяет запросы между серверами по очереди);
|
|||
|
- взвешенный циклический перебор (каждый сервер имеет вес в зависимости от его производительности, более мощные сервера
|
|||
|
берут на себя больше запросов);
|
|||
|
- наименьшее количество подключений (запросы направляются на сервер с наименьшим количеством активных соединений).
|
|||
|
|
|||
|
Существуют открытые технологий для балансировки нагрузки в распределенных системах, которые могут распределять запросы
|
|||
|
между несколькими серверами. К таким технологиям можно отнести Nginx (веб-сервер, который обеспечивает высокую
|
|||
|
производительность и отличается низким потреблением ресурсов и широкими возможностями) и Apache HTTP Server (позволяет
|
|||
|
обеспечить отказоустойчивость).
|
|||
|
|
|||
|
Балансировка нагрузки на базах данных может осуществляться при помощи репликации данных - синхронизации содержимого
|
|||
|
нескольких копий базы данных, или шардирования, при котором база данных разделена на несколько шардов, где каждый шард
|
|||
|
содержит часть данных.
|
|||
|
|
|||
|
Реверс-прокси - это один из элементов балансировки нагрузки, который может использоваться для маршрутизации запросов от
|
|||
|
клиентов к различным серверам. Реверс-прокси принимает запросы от клиентов и перенаправляет их к наиболее подходящему
|
|||
|
серверу в зависимости от текущей нагрузки. Примером реверс-прокси является Nginx.
|