Научная статья на тему 'ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ НАГРУЗКИ ПО СЕРВЕРНЫМ СТАНЦИЯМ В ВЫЧИСЛИТЕЛЬНОМ КОМПЛЕКСЕ НА ОСНОВЕ ГЕНЕТИЧЕСКОГО АЛГОРИТМА'

ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ НАГРУЗКИ ПО СЕРВЕРНЫМ СТАНЦИЯМ В ВЫЧИСЛИТЕЛЬНОМ КОМПЛЕКСЕ НА ОСНОВЕ ГЕНЕТИЧЕСКОГО АЛГОРИТМА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
2
0
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
распределение вычислительной нагрузки / серверный комплекс / генетический алгоритм оптимизации / имитационная модель / computational load / server complex / optimization genetic algorithm / simulation model

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Денисов Олег Владимирович

В статье рассматриваются вопросы распределения нагрузки между вычислительными ресурсами серверного комплекса. Исследованы возможности повышения быстродействия и производительности высоконагруженных клиент-серверных информационных систем путем оптимизации распределения вычислительной нагрузки с использованием генетического алгоритма.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Денисов Олег Владимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

OPTIMIZATION OF LOAD DISTRIBUTION ACROSS SERVER STATIONS IN A COMPUTING COMPLEX BASED ON A GENETIC ALGORITHM

The article addresses issues related to load distribution among the computing re-sources of a server complex. It explores opportunities for enhancing the speed and perfor-mance of high-load client-server information systems by optimizing the distribution of compu-tational load using a genetic algorithm.

Текст научной работы на тему «ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ НАГРУЗКИ ПО СЕРВЕРНЫМ СТАНЦИЯМ В ВЫЧИСЛИТЕЛЬНОМ КОМПЛЕКСЕ НА ОСНОВЕ ГЕНЕТИЧЕСКОГО АЛГОРИТМА»

Key words: library processes, quality of business process management, technostress, digital transformation.

Shevchuk Elena Vladimirovna, candidate of technical sciences, docent, evshevchamail. ru, Russia, Novosibirsk, Novosibirsk state pedagogical university,

Afonasev Mikhail Sergeyevich, employee, [email protected], Russia, Novosibirsk, Novosibirsk state pedagogical university

УДК 004.891.3

Б01: 10.24412/2071-6168-2025-1-160-161

ОПТИМИЗАЦИЯ РАСПРЕДЕЛЕНИЯ НАГРУЗКИ ПО СЕРВЕРНЫМ СТАНЦИЯМ В ВЫЧИСЛИТЕЛЬНОМ КОМПЛЕКСЕ НА ОСНОВЕ ГЕНЕТИЧЕСКОГО АЛГОРИТМА

О.В. Денисов

В статье рассматриваются вопросы распределения нагрузки между вычислительными ресурсами серверного комплекса. Исследованы возможности повышения быстродействия и производительности высоконагруженных клиент-серверных информационных систем путем оптимизации распределения вычислительной нагрузки с использованием генетического алгоритма.

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

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

Развитие новых информационных технологий, таких как, например, генетические алгоритмы (ГА), являющиеся алгоритмами прямого поиска, делает возможным эффективно решать задачу оптимизации распределения вычислительной нагрузки. Математический аппарат генетических алгоритмов [6, 7] позволяет выполнить оптимизацию в случаях, если показатель качества работы системы является нелинейной, не дифференцируемой функцией.

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

Постановка задачи. В качестве исходных данных для проведения исследований использованы экспериментально полученные параметры серверного комплекса, обрабатывающего вычислительные задачи [2]. При этом рассматривались серверы с различными вычислительными возможностями и состояниями загруженности. Принималось, что распределение нагрузки между вычислительными ресурсами осуществляется по круговому циклу с использованием алгоритма упорядочивания и перебора серверов Round-robin [3].

Задача оптимизации распределения нагрузки по вычислительным ресурсам ставилась следующим образом: определить параметры серверного комплекса (среднее время обслуживания заявки для каждого сервера), при которых будет обработано наибольшее количество запросов пользователей, поступивших в систему.

Имитационная модель работы серверного комплекса. Для проведения исследований разработана имитационная модель серверного комплекса с использованием программных средств MATLAB / Simulink / SimE vents [2, 8-10]. Модель учитывает особенности поступления заявок, их обработки и распределения по серверам. Схема имитационной модели работы серверного комплекса при распределении нагрузки с помощью сервера-балансира приведена на рис. 1.

Л

Event-Based Random Number Time-Based

end departed

IN '■■' ^ OUT

Instantaneous Entity Counting Scope

departed number

To Workspacel

ft

Л

Event-Based Random Numberl

Л

Random Number2 n2

Л

Event-Based Random Number3

rn Outi

Connl Out2

departed 1

0.05306|

л

Ini Outi

Conni Out2

departed 2

Ini Outi

Conni Out2

Event-Based Random Number4

0.08544|

Ini Outi

Conni Out2

H>D3

To Workspace2

3i

i2i

departed numberl

ni

Serveri

OUT

0.8245

30

avr time

i2i

num

Server2

0.2903

29

avr wait

0.355

13

Server3

J5

avr length

FIFO Queue

30

departed 4

i4

Server4

Рис. 1. Схема модели серверного комплекса (Server1...4)

Источником задач (заявок на обслуживание) является блок Time-Based Entity Generator, при этом для задания закона распределения и среднего времени между генерациями заявок используется блок Event-Based Random Number. Принималось, что входной поток заявок имеет экспоненциальный закон распределения с изменением длительности пауз между поступлением заявок в диапазоне 0,5...4 с. Задачи поступают в блок оче-

реди FIFO Queue. Из блока очереди через блок переключателя Output Switch заявки могут перемещаться к одной из четырех серверных станций. При этом реализуется круговое распределение нагрузки, то есть последовательное распределение задач перебором серверов по круговому циклу, что соответствует алгоритму Round-robin.

Каждый из серверов представлен соответствующей подсистемой Server1...4. На рис. 2 показана структура подсистемы Serverl - модели серверной станции.

Рис. 2. Схема подсистемы модели сервера Serverl

Основным элементом этой модели является канал обслуживания -собственно сервер (Server), который принимает на вход заявку и задерживает ее в течение времени обслуживания. Сигнал, соответствующий величине задержки, поступает на вход сервера от генератора случайной величины времени обработки заявки Processing timel (тип блока - Event-Based Random Number). Принималось, что время обработки заявок серверами распределено по экспоненциальному закону (длительности обслуживания заявки 1.5 с).

Моделирование и оптимизация распределения нагрузки по серверным станциям. Для выполнения с помощью ГА в среде MATLAB оптимизации работы системы балансировки нагрузки (обеспечивающей выполнение наибольшего количества запросов пользователей Jn) вместо критерия количества обработанных заявок Jn использован критерий - Jn, для которого находится минимальное значение. Поиск параметров, доставляющих минимум критерию J=- Jn, осуществлялся с помощью m-файла (сценария в среде MATLAB), выполняющего многократные вызовы модели серверного комплекса с передачей параметров в генетический алгоритм. Для работы с функциями раздела MATLAB / Global Optimization Toolbox устанавливались требуемые опции генетического алгоритма и осуществлялся контроль процесса оптимизации. Для отыскания минимума критерия использовалась процедура ga, а создание структуры опций ГА реализовано оператором gaoptimset.

Так как при оптимизации осуществлялся поиск параметров системы, доставляющих минимум критерию J=J(mi, m2, тз, m4), то для использования генетического алгоритма в качестве особи принят вектор параметров x=(mi, m2, m3, m4). При этом параметры ГА устанавливались следую-

щие: число особей в популяции от 20 до 50; число поколений (генераций) -от 10 до 15. Начальные значения параметров (среднее время обслуживания заявки для каждого сервера Ш1, 1=1...4) случайным образом выбирались из принятого диапазона (от 0.5 до 5 с).

На каждом этапе работы алгоритма рассматривался вектор параметров х и соответствующее ему значение критерия I. Так как начальная популяция ГА формируется с использованием генератора случайных числе, то для выбора лучшего из полученных решений выполнялось несколько реализаций расчетов. Рис. 3 - 4 иллюстрируют работу генетического алгоритма для одной из выполненных реализаций.

Рис. 3. Оптимизация распределении нагрузки по критерию максимума числа обработанных заявок: выбор среднего времени обслуживания заявки для каждого сервера с помощью генетического алгоритма

о 4

ГС

5 2

ш 2

сг

ш о

Длительности пребываия заявки в системе

_...1_1=0..162.....4_______________ _______________________Щ....1___________________________ среднее время _______т....

- — -

о

10

15 20 25

номер заявки ^еп/ег1)

30

35

пТ^пППпЬпПп^п^ Пп ППп п

10

15 20 25

номер заявки (Server2)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

30

11

35

1Т-

0

10

15 20

номер заявки (Server3)

25

30

о 10

к

Е 5

0) 5 ср

т 0

35

и"1-88 ко" 1-33

Л-"-. ■ г+1-г;

0

10

15 20 25

номер заявки (Server4)

30

35

Рис. 4. Длительности обработки заявок серверами при оптимизации выбора серверов (по критерию максимума числа обработанных заявок)

5

5

0

0

5

4

2

0

5

5

При оптимизации распределении нагрузки (по критерию максимума числа обработанных заявок) рассматривались 15 поколений, процесс сошелся к 10 поколению (см. рис. 3). Для полученных оптимальных значений среднего времени обслуживания заявки для каждого сервера (особь генетических алгоритмов - гистограммы справа) приведены графики, характеризующие использование серверов при обработке запросов пользователей.

Временные характеристики работы серверного комплекса, представленные ниже (см. рис. 4), получены в результате оптимизации (установлено среднее время обслуживания для каждого сервера). Получено, что при распределении вычислительной нагрузки длительность обработки заявок каждым из серверов не превышает 4 с, обеспечивая максимальное количество запросов пользователей (обработано 120 запросов).

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

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

1. Викулов Е.О., Леонов Е.А., Денисова Л.А. Автоматизированное распределение больших объемов данных высоконагруженных систем // Динамика систем, механизмов и машин. 2014. № 3. С.146-149.

2. Денисов О.В. Имитационное моделирование распределения нагрузки в вычислительном комплексе с учетом сложности задач // Известия Тульского государственного университета. Технические науки. 2024. № 7. С. 330-335.

3. Ghomi E.J., Rahmani A.M., Qader N.N. Load-balancing algorithms in cloud computing: A survey / Journal of Network and Computer Applications. 2017.

4. Vikulov E.O., Denisov O.V., Denisova L.A. Data distribution system preparation of server stations data. Journal of Physics: Conference Series Сер. "Mechanical Science and Technology Update, MSTU 2018" 2018. С.012097.

5. Alkhatib A., Sawalha T., Alzu'bi S. Load Balancing Techniques in Software-Defined Cloud Computing: an overview. 2020.

6. Денисова Л.А. Математическая модель цифровой системы регулирования с переменными параметрами // Автоматизация в промышленности. 2011. №9. С. 45-48.

7. Денисова Л.А. Многокритериальная оптимизация на основе генетических алгоритмов при синтезе систем управления. Омск: Омский государственный технический университет, 2014. 172 с.

8. Мещеряков В.А., Денисов В.П., Денисова Л.А. Обучение студентов имитационному моделированию систем массового обслуживания в MATLAB // Сборник материалов II Торгового форума Сибири. Омск, 2013. С. 179-181.

9. Simulink: software for numerical simulation of continuous processes. Available. [Электронный ресурс] URL: http://www.mathworks.com/products/simulink (дата обращения: 10.05.2024).

10. MATLAB SimEvents User's Guide [Электронный ресурс] URL: http://www.mathworks.com (дата обращения: 10.05.2024).

Денисов Олег Владимирович, ассистент, olegdenisov95@yandex. ru, Россия, Омск, Омский государственный технический университет

OPTIMIZATION OF LOAD DISTRIBUTION ACROSS SERVER STATIONS IN A COMPUTING COMPLEX BASED ON A GENETIC ALGORITHM

O.V. Denisov

The article addresses issues related to load distribution among the computing resources of a server complex. It explores opportunities for enhancing the speed and performance of high-load client-server information systems by optimizing the distribution of computational load using a genetic algorithm.

Key words: computational load, server complex, optimization genetic algorithm, simulation model.

Denisov Oleg Vladimirovich, assistant, [email protected], Russia, Omsk, Omsk State Technical University

УДК 004.623

Б01: 10.24412/2071-6168-2025-1-165-166

МЕТОДИКА ПОСТРОЕНИЯ ТРАКТА ДОВЕДЕНИЯ ИНФОРМАЦИИ ДО ПОДВИЖНЫХ ОБЪЕКТОВ СПЕЦИАЛЬНОГО НАЗНАЧЕНИЯ

С.В. Чернобровкин

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

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

В современном мире, где объемы передаваемых данных растут экспоненциально, а требования к своевременности их доведения становятся

165

i Надоели баннеры? Вы всегда можете отключить рекламу.