Разделы

Цифровизация Бизнес-приложения Открытое ПО

Специалисты YARUS WMS добились высокой производительности на open source платформе

Специалисты YARUS протестировали работу YARUS WMS на open source платформе и полностью перевели весь стек на open source решения. В процессе тестирования были получены положительные результаты, которые дают возможность оптимизировать стоимости «железной» части и снижать зависимости от не надежных поставщиков ПО.

Многие годы специалисты YARUS для реализации проектов по автоматизации склада использовали стек технологий от компании Майкрософт, как минимум Windows Server и MS SQL Server. Данный стек успешно решал большинство задач и не требовал сложных настроек, работал «из коробки».

Основная проблема была только в высокой стоимости такого решения, она складывалась из:

Microsoft-стек.

  1. Microsoft Windows Server – стоимость сильно варьируется от количества процессоров, ядер и прочего «железного» оборудования.
  2. Microsoft SQL Server – аналогично Windows Server стоимость для Enterprise высокая и сильно зависит от используемого «железа».
  3. Microsoft Terminal Server – используется в устаревших WMS системах для подключения мобильных терминалов.

Инженеры ЯРУС полностью перевели весь стек на open source решения, а именно:

Open source-стек.

  1. ОС Debian 12.
  2. Postgres Pro 16.
  3. Веб-сервер. Контейнер Docker с ОС Ubuntu server и веб-сервером Apache.
  4. Клиентская часть – веб-клиент от 1С и YARUS WMS клиент для ОС Android.

Любые изменения в какой-либо из компонентов стека технологий системы WMS YARUS проходят два вида тестирования:

  1. Инструментальные на предмет выявления логических ошибок и возможных ошибок отладки (ежедневный deploy ci/cd).
  2. Нагрузочное тестирование с применением бот-тестов с целью выявления пороговых значений нагрузки для нормального функционирования системы управления складом YARUS WMS.

Нагрузочные тесты проводились для Базового модуля YARUS WMS при выделенных ресурсах:

  • Сервер. Виртуальный сервер на базе ОС Debian 12, 8 ядер тактовой частотой 4,6 ГГц, 20 Гб оперативной памяти, жесткий диск NVMe.
  • Postgres Pro 16 БД сервер. Виртуальный сервер на базе ОС Debian 12, 8 ядер тактовой частотой 4,6 ГГц, 8 Гб оперативной памяти, жесткий диск NVMe.
  • Веб-сервер. Контейнер Docker с ОС Ubuntu server и веб сервером Apache.
  • Redis Insight версия 2.4. Контейнер Docker с ОС Ubuntu. В базовом варианте теста не использовался, т.к. предназначен для высоконагруженных WMS систем, когда речь идет о сотнях ТСД, работающих одновременно в режиме чтение-запись.

Ботвиртуальная сессия в среде OS Android, экземпляр тонкого клиента YARUS WMS. Запускается автоматически и работает по заданному сценарию: приемка товара, сборка товаров как самые критичные для склада операции.

Тестовое окружение в части ботов – дискретная нагрузка, начиная с 50 ботов с шагом в 10 до 100 ботов включительно.

Следует отметить, что такая нагрузка со стороны ботов (циклы чтения и записи каждые 5 секунд) соответствует складскому комплексу с одновременной работой порядка 250-300 ТСД в обычном (штатном) режиме (для торговых складов, RETAIL, производственные склады).

*Также надо понимать, что любой тест является синтетическим и зависит от многих факторов.

Результаты тестирования:

  • Стационарные рабочие места, тонкий клиент на 1С. Заметные задержки (от 5 до 10 секунд на открытие формы) стали появляться при активной работе 100 ботах.
  • Мобильное рабочее место, тонкий клиент YARUS Android. Задержки стали появляться при работе с экранными формами в пределах от 3 до 5 секунд при работе 100 ботов.

Выводы:

На относительно дешевом «железе» и бесплатном ПО (вся серверная часть, кроме продуктов от 1С и ЯРУС) мы получили стабильную (без единого сбоя) систему, которая выдерживает несколько циклов подряд под высокой нагрузкой.

Open source решения по общему времени прохождения бот-теста показали себя не хуже, чем корпоративные решения от Microsoft.

Данный стек можно масштабировать: вертикально (добавления «железных» ресурсов) и горизонтально (применения программного кэша в виде REDIS in memory cached data base) (отдельный тест для open source стека будет проведен позже).

Наглядно увидеть, как проходит сценарий выполнения при работе с ботами можно по ссылке.

erid:LjN8KBj1DРекламодатель: ООО «ЯРУС ВМС»ИНН/ОГРН: 7801655788/1187847364759Сайт: https://yaruswms.ru/