
Исследователи Пермского Политеха разработали новый подход к созданию веб-сервисов, который помогает сайтам и приложениям стабильнее работать при большом количестве пользователей. Испытания показали, что разработка почти в два раза снижает расход оперативной памяти и позволяет эффективнее распределять нагрузку на процессор.
Сегодня интернет-магазины, мобильные приложения и государственные онлайн-сервисы ежедневно обрабатывают огромный поток информации. Пользователи оформляют заказы, оплачивают покупки, отправляют сообщения, записываются к врачам и получают различные услуги. При резком увеличении числа посетителей системы могут не справиться с нагрузкой: страницы начинают медленно открываться, появляются ошибки, а иногда сервис полностью перестает работать.
Одна из главных причин таких сбоев — перегрузка базы данных. Именно там хранятся сведения о товарах, пользователях, заказах и другая информация, необходимая для работы сайта. Каждый запрос пользователя требует обращения к базе. Когда таких обращений становится слишком много, система начинает работать медленнее.
Для бизнеса подобные проблемы могут обернуться серьезными финансовыми потерями. Даже несколько минут недоступности крупного интернет-магазина способны привести к потере значительной суммы денег. Для государственных сервисов сбои также создают проблемы: пользователи не могут оформить документы, записаться к врачу, оплатить налоги или воспользоваться другими важными услугами.
Разработчики уже используют различные технологии, которые помогают отдельным элементам веб-сервисов справляться с нагрузкой. Однако обычно такие решения применяются разрозненно. Из-за этого внедрение нового инструмента в уже существующую систему требует дополнительных доработок и тестирования.
Ученые Пермского Политеха предложили объединить несколько технологий в единую архитектуру. Сначала они разделили программную основу веб-сервиса на независимые компоненты. Благодаря этому перегрузка одного элемента не приводит к остановке всей системы.
Следующим этапом стало внедрение специального диспетчера соединений. Он распределяет запросы пользователей к базе данных таким образом, чтобы не допустить ее перегрузки. Вместо одновременного поступления огромного количества обращений система получает их в более равномерном порядке.
Исследователи также учли нагрузку, которую создают функции искусственного интеллекта. По словам аспиранта кафедры «Экономика и управление промышленным производством» ПНИПУ, архитектора ПО Олега Горшкова, в существующих системах ИИ часто подключают к уже работающему сайту. Из-за этого сложные вычисления конкурируют за ресурсы с основными процессами.
В разработанной архитектуре для ИИ-задач предусмотрены отдельные вычислительные мощности. Это позволяет тяжелым операциям не мешать основной работе сайта.
После создания новой системы ученые проверили ее на действующей веб-платформе. Они искусственно увеличивали количество одновременных пользователей и сравнивали работу сервиса до и после внедрения разработки. Во время эксперимента специалисты следили за использованием оперативной памяти и загрузкой процессора.
Результаты показали, что новая архитектура почти в два раза сократила потребление оперативной памяти и позволила обрабатывать больше запросов одновременно. Даже при высокой нагрузке не возникало большого количества накопившихся запросов, которые могли бы замедлить работу сайта.
Как отметила профессор кафедры «Экономика и управление промышленным производством» ПНИПУ, доктор экономических наук Жанна Мингалева, благодаря этому компаниям не придется постоянно увеличивать объем памяти и покупать дополнительное оборудование для обслуживания растущего числа пользователей.
Разработка может помочь создавать более стабильные интернет-магазины, приложения и другие цифровые сервисы. Кроме того, снижение нагрузки на процессор позволит сохранить дополнительные вычислительные ресурсы для запуска новых функций и более сложных задач с использованием искусственного интеллекта.
Подписывайтесь на наши Телеграм, ВКонтакте, Одноклассники, Max
Если вы стали очевидцем ЧП или чего-то необычного, сообщите об этом в редакцию: boris.merkushev@phkp.ru