Аналитика

«Росатом» представил платформу, превзошедшую западные аналоги по производительности

Олег Пашинин («Росатом»): Наша разработка продемонстрировала превосходство в скорости работы над западными конкурентами

В государственной корпорации «Росатом» успешно завершена инициатива по замене иностранного программного обеспечения в одной из важнейших цифровых систем — Единой отраслевой системе документационного обеспечения (ЕОСДО). В результате масштабных усилий было разработано ядро «Атом.Контент», которое пришло на смену западному ECM-решению Documentum. О том, как этот проект дал старт новым отечественным продуктам и как «Атом.Контент» эволюционировал в «Атом.Платформу» для ускоренной разработки корпоративных приложений, рассказывает Олег Пашинин, возглавляющий соответствующее направление в отраслевом партнёре «Росатома».

CNews: Что послужило основой для создания «Атом.Платформы»?

Олег Пашинин: В процессе работы над проектом «Импортозамещение ЕОСДО» для «Росатома» мы разработали набор Java-библиотек, предназначенных для построения систем, которые управляют объектами различных категорий и включают как структурированные данные, так и файловый контент.

Основу ЕОСДО — «Атом.Контент» — мы наделили возможностями, схожими с ECM-платформой Documentum, однако построили её на современной архитектурной основе. В разработке использовались Spring Boot, Hibernate, JDBC, Hikari CP для эффективной обработки данных, а также была обеспечена совместимость с разными форматами хранения контента: файловыми системами, S3, WebDAV и другими.

Это ядро оказалось чрезвычайно эффективным и продемонстрировало более высокую скорость обработки при аналогичных объёмах информации и нагрузке в сравнении с Documentum, на котором изначально базировалась ЕОСДО. Благодаря этому нам удалось перенести систему электронного документооборота «Росатома» вместе со всеми архивными данными и документами, накопленными за 13 лет, на новую основу, а также осуществить переход с СУБД Oracle на Postgres Pro Certified без снижения производительности.

В ходе работы над очередным проектом — «Разработка Централизованного электронного архива (ЦЭА) "Росатома"» — было решено расширить базовое ядро до универсальной платформы, позволяющей оперативно создавать корпоративные программные продукты. Так возникла платформа для ускоренной разработки корпоративных приложений — «Атом.Платформа».

CNews: Пожалуйста, подробнее объясните назначение этого решения.

Олег Пашинин: Задача «Атом.Платформы» — сделать процесс создания корпоративных приложений быстрее и экономически эффективнее.

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

«Атом.Платформа» предлагает готовые компоненты для построения пользовательских интерфейсов и бизнес-процессов, а также базовую объектную модель, которую можно адаптировать под конкретную задачу. Такой подход дает возможность быстро создавать корпоративные приложения в единой парадигме, сокращает затраты на разработку и поддержку систем, ускоряет внедрение благодаря унифицированным интерфейсам и типовым сценариям использования.

CNews: Чем она отличается от других платформ для разработки?

Олег Пашинин: «Атом.Платформа» изначально создавалась для построения систем, работающих как со структурированными данными, так и с документами. Одним из основных условий было обеспечение высокой производительности: поддержка миллионов объектов и одновременная работа десятков или даже сотен тысяч пользователей.

Ранее для подобных задач применялись зарубежные ECM-системы — Documentum, OpenText, FileNet. Отечественные аналоги, обладая более широкими возможностями, часто имели проблемы с масштабированием. Это заставляло крупные компании либо использовать иностранные платформы, либо, выбирая российские решения, выстраивать распределенную архитектуру — для филиалов и дочерних структур разрабатывались отдельные экземпляры систем.

Нам удалось разработать полностью российскую платформу, которая по масштабируемости не уступает западным аналогам и не ограничивает разработчиков в функциональности. Сегодня в Единой отраслевой системе документооборота (ЕОСДО) «Росатома», основанной на «Атом.Контенте», зарегистрировано более 125 тысяч пользователей. Это крупнейшая в России централизованная СЭД, работающая на Postgres Pro Certified с объемом базы данных, превышающим 25 ТБ.

Ключевым достоинством «Атом.Платформы» является возможность строить на ее основе отказоустойчивые корпоративные решения, предназначенные для автоматизации бизнес-процессов и управления разнотипными объектами. Надежность здесь понимается не только как устойчивая работа с обширными массивами данных и множеством пользователей, но и как наличие комплексных инструментов для обеспечения информационной безопасности.

CNews: Какие механизмы защиты данных предусмотрены в «Атом.Платформе»?

Олег Пашинин: Платформа включает как проверенные механизмы разграничения доступа и защиты информации, известные по ECM Documentum, так и собственные дополнительные разработки.

Все инструменты защиты информации в «Атом.Платформе» сертифицированы ФСТЭК России, что упрощает для служб информационной безопасности компаний процедуру аттестации систем перед их запуском в промышленную эксплуатацию.

CNews: Вы упомянули, что «Атом.Платформа» призвана ускорить создание корпоративных приложений. Как именно это происходит?

Олег Пашинин: Наша платформа следует современным принципам построения информационных систем, позволяя разрабатывать решения с различной архитектурой. Для создания интерфейсов разработчики могут применять широко распространенные фреймворки, такие как Angular, React, Vue.js и другие. Системы можно строить как на основе микросервисов, так и в виде монолитных приложений.

При разработке «Атом.Платформы» мы ориентировались на поддержку методологии быстрой разработки приложений (Rapid Application Development, RAD). Это стало возможным благодаря набору готовых, тесно интегрированных между собой компонентов. Платформа содержит: базовую объектную модель с 22 типами объектов, модуль пользовательских интерфейсов, включающий 51 компонент со встроенной логикой обработки данных, и модуль автоматизации бизнес-процессов, который связан с UI-компонентами для работы с задачами и оповещениями. Такая глубокая интеграция всех частей экономит время разработчиков и позволяет оперативно создавать готовые функциональные блоки.

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

CNews: Сколько времени требуется разработчикам, чтобы освоить продукт?

Олег Пашинин: Как показывает практика, специалистам среднего уровня (middle) для освоения «Атом.Платформы» требуется около месяца. Начинающим разработчикам (junior) на это нужно примерно два. Те же, кто уже работал с платформой Documentum, могут приступать к написанию кода практически сразу, поскольку объектная модель «Атом.Платформы» и методы объектов унаследованы от этой ECM-системы. Это дает компаниям возможность эффективно задействовать знания программистов, которые уже имеют опыт создания и поддержки решений на базе Documentum.

CNews: Из каких элементов состоит платформа?

Олег Пашинин: В ее состав входят следующие инструменты для разработки:

  • Платформенное ядро, на основе которого строится бизнес-логика приложений. Оно было создано с чистого листа и содержит базовую модель бизнес-объектов. Работа с данными осуществляется через объекты и классы с использованием фреймворка Hibernate;
  • Модуль для создания пользовательских интерфейсов, построенный на фреймворке Vaadin;
  • Модуль для автоматизации бизнес-процессов, основанный на фреймворке Camunda;
  • Поисковый движок OpenSearch и модуль Apache Tika для извлечения текста, которые обеспечивают полнотекстовый и атрибутивный поиск.

Кроме инструментов разработки, платформа включает два готовых приложения:

  • Административное приложение, предоставляющее возможности для управления пользователями, группами, распределения прав доступа, выполнения запросов к данным, настройки системных задач и других административных функций;
  • Технологическое хранилище — сервис для интеграции с корпоративными информационными системами, который организует хранение контента.

CNews: Расскажите более подробно о компоненте «Технологическое хранилище».

Олег Пашинин: Частая задача, с которой сталкиваются разработчики ERP-, CRM- и других корпоративных систем — это необходимость хранения контента. Встроенные механизмы таких платформ обычно позволяют это делать, но часто неэффективно, что негативно влияет на общую производительность.

Технологическое хранилище, созданное на «Атом.Платформе», призвано решить эту проблему. Сервис может быть развернут как в контейнере, так и на отдельном сервере. К нему можно обращаться через REST API из информационных систем для загрузки контента и операций с ним: обновления, создания версий, распределения по папкам, удаления и других — всего предусмотрено 20 различных вызовов.

Помимо REST API, технологическое хранилище также поддерживает протокол SAP ArchiveLink, что дает возможность заменить архивы на базе OpenText без необходимости изменять код ERP-систем.

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

CNews: Какие информационные решения уже созданы на основе «Атом.Платформы»?

Олег Пашинин: На текущий момент на платформе развернуто пять ключевых систем:

  • ЕОСДО — Единая отраслевая система электронного документооборота «Росатома» (построена на «Атом.Контент»);
  • ЕОСДО ТОП — специализированный интерфейс для руководящего состава в системе документооборота «Росатома» (основан на «Атом.Контент»);
  • СЭД МБ — Система электронного документооборота для международной деятельности «Росатома»;
  • «Документы» — модуль для хранения файлов и организации совместной работы с ними;
  • ЕОС ЦЭА — Единая отраслевая система Централизованного электронного архива «Росатома».

Параллельно ведется разработка ЦЭА МБ — Централизованного электронного архива для международного бизнеса. Эта система ориентирована на подразделения «Росатома», работающие за пределами страны.

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

CNews: С какими системами хранения данных совместима «Атом.Платформа»?

Олег Пашинин: Платформа поддерживает интеграцию с различными типами хранилищ. Базовая поддержка включает файловые системы, а благодаря модульной системе адаптеров возможно подключение практически любых систем хранения контента. Нами уже реализованы адаптеры для работы по протоколам WebDAV, S3 и SFTP. При возникновении потребности могут быть разработаны дополнительные адаптеры для других, в том числе узкоспециализированных, хранилищ.

CNews: Благодаря чему системы на «Атом.Платформе» демонстрируют высокую производительность?

Олег Пашинин: «Атом.Платформа» изначально создавалась как импортозамещающее решение для высоконагруженной системы электронного документооборота «Росатома». Дальнейшее ее развитие происходило в рамках проекта по построению электронного архива. К этим системам с самого начала предъявлялись строгие требования по производительности и способности обрабатывать огромные массивы объектов. Для выполнения этих условий архитекторы провели глубокую оптимизацию платформы: усовершенствовали ORM-модуль, реализовали модуль кэширования данных и устранили bottlenecks в кодовой базе.

Для контроля работы компонентов в «Атом.Платформу» интегрированы метрики, позволяющие отслеживать время работы JVM, использование оперативной памяти, состояние пулов буферов и соединений с БД, а также загрузку сервера приложений. Сбор данных о событиях осуществляется с помощью Prometheus, а их визуализация и анализ — в Grafana. Постоянный мониторинг систем на базе платформы и оперативный анализ событий позволяют выявлять и устранять узкие места, обеспечивая стабильную и надежную работу.

CNews: Каковы планы по дальнейшему развитию платформы?

Олег Пашинин: Развитие платформы происходит благодаря реализации конкретных проектов. Такие инициативы, как ЕОСДО и ЕОС ЦЭА, сформировали запрос на решение, обладающее особыми характеристиками: ускоренное создание интерфейсов и бизнес-логики, автоматизация рабочих процессов, управление контент-хранилищами, полнотекстовый поиск, средства защиты информации, а также поддержка сотен тысяч пользователей и десятков миллионов документов.

Будущая эволюция «Атом.Платформы» также будет определяться запросами новых проектов. К ключевым перспективам можно отнести применение языковых моделей для анализа контента, разработку инструментов, облегчающих автоматизацию и интеграцию с внешними системами. Мы ожидаем, что рост платформы останется верен своей изначальной цели — снижение затрат и сокращение времени на создание корпоративных информационных систем.

Поделиться:

0 Комментариев

Оставить комментарий

Обязательные поля помечены *
Ваш комментарий *
Категории