Анализ эффективности использования алгоритмов балансировки ресурсов пользователей web-сервисов

NovaInfo 34, скачать PDF
Опубликовано
Раздел: Технические науки
Просмотров за месяц: 2
CC BY-NC

Аннотация

В статье анализируется время отклика облачных серверов на распределение ресурсов пользователя. Рассматриваются три алгоритма балансировки: Round Robin, Equally Spread Current Execution, Throttled Load Balancing. В результате можно определить наиболее эффективный алгоритм распределения ресурсов пользователя.

Ключевые слова

CLOUD BALANCING, БАЛАНСИРОВКА РЕСУРСОВ, ОБЛАЧНЫЕ ХРАНИЛИЩА, CLOUD STORAGE, АЛГОРИТМЫ БАЛАНСИРОВКИ

Текст научной работы

Введение

Проблемы балансировка ресурсов являются особенно актуальными в настоящее время, так как с каждым днем увеличивается количество серверов, предоставляющих пользователям различные ресурсы. Для наиболее эффективного взаимодействия пользователя и предоставляемых ресурсов необходимо определить, какие сервисы являются наиболее подходящими для тех или иных задач.

Постановка проблемы

На данный момент объём информация постоянно увеличивается, сама информация имеет разные формы, представление. Каждый человек изо дня в день сталкивается и узнает все больше и больше информации.

Существующие на сегодняшний день технологии предоставляют каждому человеку доступ к той или иной информации, поэтому необходимо сбалансировать ресурсы таким образом, чтобы каждый пользователь имеющий доступ к ресурсам получал весь объем информации с как можно меньшими временными задержками.

Алгоритмы балансировки ресурсов

В данный момент существует множество алгоритмов балансировки информационных ресурсов. Рассмотрим некоторые из них.

Algoritm Round Robin (RR)

Данный алгоритм распределяет запросы пользователей по круговому циклу. Т.е. первый запрос передается первому серверу, следующий второму и так далее. Как только запрос передается последнему серверу, последующий запрос передается первому серверу и так далее.

– Графическое представление алгоритма Round Robin
Рисунок 1. Графическое представление алгоритма Round Robin

Algoritm Equally Spread Current Execution Algorithm (ESCE)

В данном алгоритме задача балансировки, рассматривается как очередь заданий, которые передаются на разные виртуальные машины. Балансировщик просматривает очередь для каждой виртуальной машины. Так же балансировщик хранит список поставленных задач на каждую виртуальную машину, что помогает определить, какие виртуальные машины свободны.

– Графическое представление алгоритм Equally Spread Current Execution
Рисунок 2. Графическое представление алгоритм Equally Spread Current Execution

Algoritm Throttled Load Balancing Algorithm (TLB)

В данном алгоритме, задача балансировки, рассматривается как очередь заданий, у которых существует приоритеты. Приоритеты могут быть назначены, по размеру, длине и многим другим параметрам, в зависимости от поставленной задачи. Чем выше приоритет, тем раньше обрабатывается запрос.

– Графическое представление алгоритм Throttled Load Balancing
Рисунок 3. Графическое представление алгоритм Throttled Load Balancing

Для определения эффективности алгоритмов по времени отклика серверов, необходимо вычислить общее время обработки пользовательских ресурсов пользователя. Для этого необходимо создать несколько файлов, и высчитать время обработки файлов, с использованием алгоритмов, и без алгоритмов. Будем использовать 3 облачных сервера: Yandex.Disk, MediaFire, DropBox.

Без использования алгоритмов

В данном случае каждый файл будет передаваться трем серверам.

В таблице 1 представлены значения времени работы для Yandex.Disk, MediaFire, DropBox серверов, на выборке девяти файлов без использования какого либо алгоритма.

Таблица 1. Исходные данные

Файл

Время для YandexDisk

Время для MediaFire

Время для DropBox

1.html

2,140465021

5,111413002

1,505884886

10.doc

2,460971832

8,679579973

4,442924976

100.doc

1,136919975

5,333097219

1,820110083

11.doc

1,483475924

5,229697943

1,876884937

12.txt

1,017494202

3,808369875

1,394765139

13.txt

1,096071005

3,783949137

1,420444012

14.txt

1,039769888

3,80785799

1,273787022

15.doc

1,843998909

5,703485012

2,037261963

16.txt

1,133949995

3,678789854

1,433843851

На рисунке 4 представлена гистограмма для данных из таблицы 1.

– Исходные данные, без использования алгоритмов.
Рисунок 4. Исходные данные, без использования алгоритмов

В RR алгоритме имеет таблица серверов, по ней определяется последовательность передачи файлов облачным серверам.

Пусть имеется N — фалов, которые необходимо отправить на сервер, и m — серверов, которые должны принять файлы. Каждый N файл равны по своим свойствам между собой, серверы m имеют равный приоритет. Тогда первый файл(запрос) отправится на сервер m=1, второй на m=2 и так далее. При достижение последнего сервера m=N, тогда следующий файл будет отправляться на сервер m=N+1 и так далее. Таким образом передача происходит по круговому циклу.

В таблице 2 представлены значения времени работы для Yandex.Disk, MediaFire, DropBox серверов, на выборке девяти файлов с использованием алгоритма Round Robin.

Таблица 2. Исходные данные

Файл

Время для YandexDisk

Файл

Время для MediaFire

Файл

Время для DropBox

1.html

0,736094952

10.doc

5,559982061

100.doc

5,112015963

11.doc

1,182497025

12.txt

5,075534105

13.txt

1,640244007

14.txt

1,355260849

15.doc

4,171220064

16.txt

1,926867008

На рисунке 5 отображены зависимости времени передачи файлов на количество файлов.

– Зависимость времени на количество файлов
Рисунок 5. Зависимость времени на количество файлов

В ESCE алгоритме имеет таблица серверов и очередей, по ним определяется последовательность передачи файлов облачным серверам. В данном алгоритме существует m — серверов, с Qm очередями. Каждый файл распределяется таким образом, что каждая очередь Qm проверяются на размер. Таким образом, первым обрабатывает сервер m, у которого в очереди наибольшее количество файлов. Вначале с очереди извлекается первый файл в очереди, отправляется на сервер, следующий запрос добавляется в ту очередь, в которой меньше всего файлов.

В таблице 3 представлены значения времени работы для Yandex.Disk, MediaFire, DropBox серверов, на выборке девяти файлов с использованием алгоритма ESCE.

Таблица 3. Исходные данные

Файл

Время для Yandex

Файл

Время для MediaFire

Файл

Время для DropBox

1.html

0,570181847

10.doc

5,08779788

100.doc

6,482433081

11.doc

0,659991026

12.txt

5,208521128

13.txt

2,814773083

14.txt

0,499054193

15.doc

6,812680006

16.txt

1,410949945

На рисунке 6 представлены зависимости времени обработки файла сервером от количества файлов в очереди.

– Зависимость времени на количество файлов
Рисунок 6. Зависимость времени на количество файлов

В TLB алгоритме имеется таблица серверов и очередей, при этом существуют приоритеты на отправку файлов на облачные сервера.

В данном алгоритме существует m — серверов, с Qm очередями. У каждой очереди есть свои приоритеты. Приоритеты выставляются по размерам файлов. Очередь с наименьшим приоритетом считается, та в которой хранятся файлы меньше 12 байт, с средним приоритетом, в которой файлы находятся в диапазоне 12

В таблице 4 представлены значения времени работы для Yandex.Disk, MediaFire, DropBox серверов, на выборке девяти файлов с использованием алгоритма TLB.

Таблица 4. Исходные данные

Маленький размер файла (x<=12)

Большой размер файла (150

Средний размер файла (12

Файл

Время для YandexDisk

Файл

Время для MediaFire

Файл

Время для DropBox

12.txt

1,068703175

10.doc

8,882771969

1.html

2,463931084

13.txt

1,065548897

  

100.doc

2,845941782

14.txt

1,22414279

  

11.doc

2,147398949

16.txt

1,015133858

  

15.doc

2,204469919

На рисунке 7 представлены зависимости времени обработки файла сервером от количества файлов в очереди.

– Зависимость времени на количество файлов
Рисунок 7. Зависимость времени на количество файлов

В ходе расчета измерений было установлено общее время обработки серверами файлов пользователя, которые представлены на рисунке 8 и в таблице 5.

Таблица 5. Результаты измерений

Общее время выполнения

Алгоритм

Время

Без алгоритма

75,69526362

RR

26,75971603

ESCE

29,54638219

TLB

22,91804242

– Общее время обработки серверами файлов пользователя
Рисунок 8. Общее время обработки серверами файлов пользователя

Вывод

Из расчета измерений можно сделать вывод, о том, что необходимо использовать алгоритмы балансировки, для сокращения времени отклика. Каждый алгоритм работает по разному, но из рисунка 11 можно сделать вывод, что наиболее эффективней использовать алгоритм TLB. За счет приоритета, в этом алгоритме сокращается время отклика сервера.

Читайте также

Список литературы

  1. Ray S and De Sarkar A, «Execution analysis of load balancing algorithms in cloud computing environment.» International Journal on Cloud Computing: Services \& Architecture, vol. 2, no. 5, 2012.
  2. Vikas Kumar and Shiva Prakash A Load Balancing Based Cloud Computing Techniques and Challenges Department of Computer Science & Engineering Madan Mohan Malaviya University of Technology. 2014
  3. Клепиков, А.К. Модель распределения ресурсов при "облачных вычислениях" / А.К. Клепиков, А.Н, Привалов // Известия Тульского государственного университета. Технические науки. 2012. С. 151 - 157.
  4. Левченко Р. И. Объединение преимуществ пассивной и активной балансировки нагрузки в рамках комплексной системы планирования для динамически распараллеливаемых программ / Р. И. Левченко [и др.]. Математические машины и системы. 2010. Т. 1. № 4. С. 24-32.
  5. Петров ДЛ., Рябиков Э.М., Егоров В.Т., Сергучсв А.А. Технологии облачных вычислений для масштабирования веб-приложений // Информационные технологии моделирования и управления. 2011. № 2. С. 227—230.

Цитировать

Веремеевский, В.В. Анализ эффективности использования алгоритмов балансировки ресурсов пользователей web-сервисов / В.В. Веремеевский, Л.А. Макушкина. — Текст : электронный // NovaInfo, 2015. — № 34. — URL: https://novainfo.ru/article/3630 (дата обращения: 26.09.2022).

Поделиться