На связи Сергей Скирдин, технический директор ИТ-интегратора «Белый код». Сегодня в большинстве компаний пользуются разными системами, от двух и более. Выстроить стабильный процесс передачи данных помогает промежуточное звено — шина. Сравниваем две системы, которые часто используют для этого.
![](https://habrastorage.org/getpro/habr/upload_files/79e/c6a/890/79ec6a89088c6565f9a3439f819ce42d.png)
Общая информация
«1С:Шина» — первая версия была выпущена в конце 2021 года. Примерно раз в год выходят новые мажорные версии. Решение находится в реестре отечественного ПО, в основе «1С:Шины» лежит технология «1С:Предприятие.Элемент».
DATAREON — первая версия шины DATAREON ESB появилась в 2014 году, в 2022 году появился продукт DATAREON Platform. Решение находится в реестре отечественного ПО, в основе — импортонезависимый технологический стек. Это кросс-платформенное приложение, построенное на технологической платформе .Net Сore без использования сторонних компонентов.
1С:Шина |
DATAREON |
Поддержка ОС | |
Windows: Microsoft Windows 7 x64, Microsoft Windows 10 x64, Microsoft Windows Server 2012 x64 и выше Linux: Linux Ubuntu 20.04 x64, Linux Alpine 3.11 x64, Linux Astra Special Edition 1.7 Кластеризация не поддерживается, поэтому для увеличения пропускной способности придется наращивать мощности сервера или делать проектное решение по балансировке нагрузки для использования нескольких серверов. |
Windows: Windows 10 (Version 1607+), Windows 11, Windows Server 2012 R2+ Linux: Ubuntu 22.04, Debian 11+, Astra Linux 1.7 SE, РЕД ОС 7.3, Red Hat Enterprise Linux, CentOS 7 Поддерживается как вертикальное масштабирование (за счет увеличения ресурсов сервера), так и горизонтальное (за счет кластеризации). |
Лицензионная политика
1С:Шина |
DATAREON |
Лицензируется только сама шина, стоимость зависит от количества работающих пользователей информационных систем на платформе «1С:Предприятие» (учитываются системы, участвующие в обменах). Три варианта поставки: до 100 пользователей — 118 т. р., до 500 пользователей — 236 т. р., более 500 — 590 т. р. Для Dev и/или PreProd контуров придется приобрести полноценную лицензию |
Лицензируется основная поставка, подписчики, дополнительные модули. Варианты приобретения: до 3 подписчиков — lite-версия, 300 т. р., Есть возможность приобрести NFPU лицензии со скидкой 75 %. |
У «1С:Шина» лицензионная политика проще и в большинстве случаев лицензии будут дешевле DATAREON. Преимущество DATAREON в наличии NFPU (Not For Production Use) лицензий, а также в наличии дополнительных модулей управления данными и организации корпоративного хранилища данных. У 1С есть NFR версия, но она доступна только партнерам 1С.
Техническая поддержка
1С:Шина |
DATAREON |
Поддержка оказывается по стандартной для продуктов 1C схеме: через обращение на v8@1c.ru (для ПРОФ лицензий) и на corp-support@1c.ru (для расширенных корпоративных лицензий). |
Стоимость поддержки вендора составляет 15 % в год от стоимости приобретенных лицензий, включая лицензии NFPU. Есть вариант поддержки вендора по SLA — 300 т.р./год и поддержка с выделенным консультантом — 600 т.р./год. |
У обоих вендоров поддержка состоит в доступе к обновлениям продуктов и линии консультации по вопросам, касающимся работы шины. По вопросам, связанным с интеграционными проектами, не помогут ни там, ни там.
DATAREON снова дороже, т. к. 1С поддерживает все свои продукты по единому договору ИТС, т. е. за него и так все платят. В пользу DATAREON можно отметить то, что поддержка отвечает оперативно, в отличие от v8@1c.ru, от которой, на самом деле, мало пользы, проще и быстрее решить проблему через партнера, но за отдельные деньги.
Документация
1С:Шина |
DATAREON |
Документация выпускается в виде книги, электронная версия размещена на портале ИТС https://its.1c.ru/db/esbdoc4 |
Разработана в виде Wiki, в открытом доступе https://docs-platform.datareon.ru/monitoring/index.html |
У обоих вендоров документация есть, что очень хорошо. По полноте документации и там, и там есть над чем работать.
Обучение
1С:Шина |
DATAREON |
Центры обучения 1С подготовили недорогие курсы: очный базовый курс за 1970 рублей (5 дней, 24 часа) https://uc1.1c.ru/course/1s-shina-kontseptsiya-programmnogo-produkta-i-ego-prakticheskoe-primenenie/ видеокурс за 86 рублей https://uc1.1c.ru/course/1s-shina-obzor-produkta-i-prakticheskij-primer-ispolzovaniya/ |
Большой набор курсов от базовых до углубленных: https://datareon.ru/services/training-courses-datareon/ Проводятся онлайн (5 дней, 20 часов), стоимость от 30 до 50 т. р. |
У DATAREON снова дороже, но и более проработано: есть углубленные курсы, удобный формат обучения (удаленно по полдня) позволяет учиться без отрыва от работы.
Функциональные возможности
1С:Шина |
DATAREON |
Взаимодействие шины с 1С | |
Подключение к 1С производится при помощи объекта, встроенного в платформу, начиная с версии 8.3.17 «Сервисы интеграции». Данный объект позволяет настроить взаимодействие с «1С:Шиной», в качестве транспорта используется HTTP-протокол. Сами процедуры регистрации необходимых объектов, регламентные задания для запуска интеграции, средства логирования и просмотра очереди при поиске проблем нужно разрабатывать самостоятельно. Разработку можно вести как в самой конфигурации, так и в расширении. Для старых систем с режимом совместимости до 8.3.17 взаимодействие с шиной через сервисы интеграции невозможно. Требуется разработка механизма очередей и передачи данных через какой-то транспорт (HTTP, файлы и т. д.). |
Модуль интеграции с 1С поставляется в виде расширения или в виде конфигурации для объединения с основной конфигурацией. Взаимодействие с шиной производится через внешнюю компоненту по UDP- и TCP-протоколам. Вендор поддерживает коннекторы с различными версиями совместимости от 8.3.9 и выше. 8.3.8 без режима совместимости и с режимом совместимости 8.2.13 Модуль интеграции является законченным решением, не требующим никакой доработки на проекте. Он уже содержит все необходимые интерфейсы для подключения модуля к шине и диагностике работы интеграции на уровне модуля. Весь код передачи данных из 1С в DATAREON и обратно задается через веб-интерфейс шины и автоматически загружается в модуль интеграции. Отдельно стоит отметить поддержку многопоточной передачи данных: вы просто задаете количество потоков для передачи, всю работу сделает модуль интеграции. |
Взаимодействие с другими системами | |
Веб-сервисы (SOAP) Возможно создавать веб-сервисы на стороне «1С:Шины», а также вызывать внешний веб-сервис и удобно обрабатывать полученные ответы. Для описания сервиса используются WSDL-схемы. Стандарт JMS Возможность интегрироваться со сторонним брокером сообщений Apache ActiveMQ Artemis, например, настраивать асинхронную интеграцию с SAP PI (SAP NetWeaver Process Integration). AMQP Дает возможность обмениваться сообщениями по протоколу AMQP версии 1.0. Кроме этого, в «1С:Шине» предусмотрены инструменты для подключения к брокеру сообщений RabbitMQ. JDBC Дает возможность прямого обмена с внешними СУБД (например, MS SQL Server, PostgreSQL). Возможно добавление нужных JDBC-драйверов в сервер «1С:Шины». Сервисы интеграции Встроенный в платформу «1С:Предприятие» механизм, позволяющий обмениваться сообщениями через «1С:Шину». Платформа, совместно с «1С:Шиной», обеспечивает гарантированную доставку сообщений при простоте использования. Обмен сообщениями в виде файлов предоставляет возможность обмениваться файлами, подключаясь к файловым хранилищам, каталогам, в том числе сетевым, и различным FTP-ресурсам. HTTP Можно создавать собственные HTTP-сервисы для обработки входящих HTTP-запросов от внешних информационных систем. Также можно подключаться к сторонним HTTP-сервисам через специальный узел, отправлять запросы к внешним ресурсам и формировать исходящие сообщения на основе результатов этих запросов. Функциональность HTTP-протокола также позволяет использовать обмен данными в соответствии с существующим REST API. |
Файлы/Папки/FTP Возможность выгружать и загружать данные. REST/SOAP Работа в режиме сервера или клиента. Встроенный swagger для режима сервера. MS SQL/Postgres/Oracle Возможность читать и записывать данные. Поддержка протоколов SMTP и IMAP. Active Directory Возможность читать и писать данные по протоколу LDAP. Apache Kafka Взаимодействие по TCP-протоколу. RabbitMQ Взаимодействие по AMQP протоколу. ADO.NET,ODBC протоколы для подключения произвольных СУБД. AS2-протокол Мостовое соединение с другой шиной DATAREON ESB или DATAREON Platform. Программируемый коннектор Возможность разработать свой коннектор на языке C#. Все коннекторы позволяют написать обработчик данных на языке подключаемой системы или на C#. |
Маршрутизация сообщений | |
В обеих системах настройка маршрутизации возможна как в графическом виде, так и описанием алгоритма в коде. | |
Трансформация сообщений | |
Все преобразование выполняется средствами встроенного языка, т. е. требует написания кода. |
Простые преобразования выполняются при помощи входящих или исходящих процессов трансформации, которые настраиваются графическим образом. В сложных случаях можно использовать входящие или исходящие алгоритмы трансформации. |
По функциональным возможностям DATAREON выглядит гораздо более привлекательным решением:
Готовый модуль интеграции с 1С, который используется на сотнях внедрений, конечно же, лучше решения, разработанного под конкретный проект. Возможно 1С поддержит работу с сервисами интеграции в БСП, это будет очень здорово, но пока нужно писать много кода.
Возможность централизованно менять код обработчиков интеграции 1С через интерфейс веб-приложения DATAREON (с возможностью проверки синтаксиса и отладки). Это, конечно, очень удобно, по сравнению с внесением изменений в расширения в каждой отдельной базе.
По взаимодействию с другими системами у обоих решений присутствует обширный список коннекторов, но DATAREON предоставляет возможность написать свой коннектор, а в «1С:Шина» такой возможности нет.
DATAREON предоставляет возможность в графическом виде настраивать трансформации, что закрывает 80% потребностей. 20% реализуется на C#, причем код не требует глубокого знания языка программирования. При наличии Google и/или чата с нейросетью задача решается достаточно просто. У 1С трансформации только кодом, на своем новом языке, материалов по которому не так много, и порог входа получается выше.
Мониторинг и диагностика
1С:Шина |
DATAREON |
Доступны следующие средства мониторинга и диагностики ошибок: Состояние каналов 1С Отображает общее количество сообщений, принятых и отправленных процессом интеграции. Состояние очередей шины Детальную статистику числа отправленных и полученных сообщений в разрезе очередей. Метрики процесса интеграции Счетчик недоставленных сообщений в узлах схемы Счетчик сообщений в файловых узлах Счетчик измененных сообщений в трансляторе Счетчик сообщений в узлах Http Счетчик ошибок в элементах схемы Счетчик сообщений в узлах Помимо предустановленных метрик можно создать свои. Журнал событий процесса Регистрируются события запуска/остановки, ошибки. Можно включить регистрацию доставки сообщений. Журнал сервера Аналог технологического журнала, только для шины. Технологический журнал «1С:Предприятия» На стороне «1С:Предприятия» события отправки и получения сообщений можно отслеживать в ТЖ по событию SINTEG. Возможность передачи метрик во внешние системы мониторинга отсутствует. |
В DATAREON реализовано отдельное веб-приложение — центр мониторинга (ЦМ). На главной странице ЦМ отображается диагностическая информация о работе платформы, серверов и процессов. Ошибки отображаются в виде плиток, метрики в виде графиков. Список метрик, доступных для мониторинга, слишком большой, чтобы приводить его здесь полностью: использование памяти (working set), Мб; максимальное использование ЦП, %; минимальное использование ЦП, %; использование памяти (working set), Мб; использование диска, Мб; получено сообщений сервисом от узла; отправлено сообщений сервисом узлу; получено сообщений от системы; отправлено сообщений в систему; получено ответных сообщений от системы; отправлено сообщений в систему без ожидания ответа; отправлено сообщений в систему с ожиданием ответа; и т. д., более 30 метрик. Кроме журналов событий по каждому объекту интеграции есть возможность в графическом виде посмотреть маршрут следования конкретного сообщения и получить исчерпывающую информацию о пути следования сообщения, трансформациях и результатах обработки сообщения. Реализовано централизованное управление уровнями логирования, в том числе в модуле интеграции 1С. Для внешних систем поддерживается получение из DATAREON данных отслеживаемых метрик и счетчиков через API и SMTP-протокол. |
Средств диагностики в «1С:Шине» откровенно не хватает, отслеживать проблемы можно только по счетчикам: отправили сообщение в тестовую шину, смотрим, где счетчики обновились, там оно прошло. На рабочем контуре бывает очень сложно отследить проблемное сообщение среди тысяч других.
В DATAREON центр мониторинга дает гораздо больше информации, позволяет отследить маршрут каждого сообщения. В случае ошибки в обработке сообщения оно не пропадает, сохраняется в архив, система позволяет внести изменения в маршрут или обработчики и заново запустить сообщение в обработку без перехода в систему источник.
Заключение
Система DATAREON вышла на рынок на семь лет раньше «1С:Шины», и это заметно. «1С:Шина» быстро развивается и, наверно, спустя какое-то время догонит DATAREON, но сейчас DATAREON явно выигрывает по архитектуре, функционалу и сервисным возможностям.
В DATAREON простой удобный интерфейс. Все разложено по полочкам, есть внешние системы, к ним внешние типы данных и обработки выгрузки и загрузки. Все настраивается из одного места, не нужно ходить по базам и что-то дописывать.
«1С:Шина» разработана на новой платформе «1С:Элемент». Интерфейс платформы пока далек от идеального. Чтобы к нему привыкнуть, нужно потратить время. Если не занимаешься проектом на шине, когда к нему возвращаешься, приходится заново вспоминать, что где находится, т. к. все неочевидно расположено.
Для больших проектов однозначно стоит рекомендовать DATAREON. С ним можно не переживать за масштабируемость и производительность. Да, стоимость лицензий, скорее всего, будет дороже, но это известная заранее сумма. Благодаря тому что DATAREON не лицензирует количество серверов, повышение нагрузки не приведет к необходимости доплатить за лицензии. С «1С:Шиной» если в какой-то момент возможностей одного сервера будет недостаточно для обработки потока сообщений, придется докупить лицензии и разработать систему распределения нагрузки между несколькими серверами.
При этом «1С:Шина» быстро развивается. В 2022 году мы делали свой первый проект на первой версии шины, и это было очень сложно, некоторые вещи не работали, приходилось писать вендору и ждать релиза с исправлением. Сейчас уже выпущена четвертая версия, в которой нет детских болячек, все стабильно работает. Поэтому если предприятие небольшое, бюджет ограничен, мы рекомендуем использовать «1С:Шину».
Ulrih
A что можете про шину Factor ESB сказать?