Шины данных (ESB): зачем компаниям использовать этот инструмент

от автора

На связи Сергей Скирдин, технический директор ИТ-интегратора «Белый код». Сегодня расскажу, какие выгоды для бизнеса дает использование шин данных. 

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

Первый вариант: интеграция между двумя объектами 

Представим простую интеграцию «точка — точка». Часто, чтобы обеспечить гарантированную доставку пакетов, разработчики выстраивают систему очередей отправки, логирования и мониторинга интеграции. Шина данных избавляет от дополнительных действий, ведь все эти инструменты доступны в стандартной поставке.

Второй вариант: больше трех систем

Если в интеграции используются 3, 5 или 10 систем, применение схемы интеграции «точка — точка» порождает хаос. Получается множество разнородных интеграций, которые зачастую разрабатываются и поддерживаются разными командами. В этом случае шина становится необходимым элементом информационной системы. 

Использование шины дает следующие преимущества:

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

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

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

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

  5. Возможность сбора данных из нескольких систем. Например, данные о наличии товара могут поступать из WMS-системы, стоимость товара — из ERP. Шина сама соберет все данные в общую структуру и передаст потребителю, например, на сайт.

  6. Шина может собирать данные для аналитического хранилища, что упростит внедрение BI-системы.

Например, для сети пиццерий мы объединили 7 баз через единую интеграционную «1С:Шину». В связи с развитием направления «Франчайзинг» у компании появилась необходимость интегрировать в информационную систему предприятия информационные базы партнеров-франчайзи. В результат подготовлена информационная система к подключению новых партнеров, это дало возможность компании планировать дальнейшее развитие.

Третий вариант: высоконагруженные системы

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

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

Единый центр управления интеграциями помогает:

  • увеличить стабильность работы,

  • снизить издержки на команду поддержки.

Гораздо проще контролировать одну систему мониторинга, смотреть логи в одном месте в едином формате. При необходимости критичные события можно отправлять на почту или в Телеграм, и для этого не нужно вести отдельную разработку.


ссылка на оригинал статьи https://habr.com/ru/articles/828818/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *