Должен ли я использовать BizTalk Orchestration

В настоящее время я занимаюсь портированием существующего приложения (BizTalk 2004) на более новую версию BizTalk. Текущее решение принимает несколько типов документов EDI, модифицирует их, если это необходимо, и отправляет их в нашу устаревшую систему для загрузки и обработки.

Этот процесс разработан с использованием комбинации портов приема, компонента конвейера, портов отправки и карт, компонентов схемы и очереди сообщений. Это решение использует 10 портов отправки и получения для обработки различных аспектов процесса, таких как пакетная передача EDI в отдельные сообщения, преобразование сообщений, обработка ошибок, проверка EDI и пакетирование сообщений EDI. Все изменения EDI выполняются с использованием компонентов очереди сообщений.

Это решение НЕ использует оркестровку вообще. Я рассматриваю реализацию текущего решения как оркестровку BizTalk. Я немного ознакомился с оркестровкой и проработал несколько примеров приложений. Но я все еще очень озадачен тем, какая выгода от использования оркестровки, если решение может быть разработано без него. Я уверен, что я что-то здесь упускаю. Какие дополнительные преимущества дает оркестрация, чего нет у нынешнего решения?

Редактировать:... Я должен уточнить вопрос... Я могу сделать это приложение без использования оркестровки с использованием маршрутизации и карт на основе контента. У меня вопрос, если я что-то упустил, не используя Orchestration?

2 ответа

Решение

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

  1. Является ли обработка транзакций
  2. Важен ли порядок сообщений
  3. Собираетесь ли вы обработать сообщение, используя бизнес-правила?
  4. Нужно ли называть внешние сборки?

Цитата из "Microsoft BizTalk Server Pattern"

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

Оркестровка может потенциально занять вдвое больше времени для одного и того же процесса. Например: простой процесс получения сообщения и его отправки приведет к 2 прыжкам сообщения с подходом обмена сообщениями против 4 с оркестровкой. Вот шаги для решения только для обмена сообщениями

  1. Получите сообщение через адаптер, сохраните его в окне сообщения
  2. Получить сообщение для порта отправки

против:

Шаги для оркестровки

  1. Получите сообщение через адаптер и сохраните его в окне сообщения.
  2. Получить сообщение, чтобы начать оркестровку
  3. Сделайте свое отображение, если вам нужно
  4. Получите элемент снова для порта отправки.

Выбирать мудро

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

Другие вопросы по тегам