Почему миграция из BizTalk Server в Azure Logic Apps?
В этом руководстве представлены общие сведения о причинах и преимуществах, сравнениях продуктов, возможностях и других сведениях, которые помогут приступить к миграции с локального сервера BizTalk Server в Azure Logic Apps. В этом руководстве вы найдете дополнительные руководства по выбору служб, которые лучше всего соответствуют вашему сценарию, а также стратегии миграции, рекомендации по планированию и рекомендации, которые помогут вам добиться успешных результатов.
Причины и преимущества
Перенос рабочих нагрузок интеграции в Azure Logic Apps позволяет получить следующие основные преимущества:
Преимущества | Description |
---|---|
Современная платформа интеграции как услуга (iPaaS) | Azure Logic Apps является частью Служб Azure Integration Services, которая предоставляет возможности, которые не существовали при первоначальном создании BizTalk Server, например: — возможность создания ИНТЕРФЕЙСов REST API и управления ими — масштабируемая облачная инфраструктура — схемы проверки подлинности, которые являются современными, более безопасными и проще реализовать — упрощенные средства разработки, включая множество возможностей на основе веб-браузера. — автоматическое обновление платформы и интеграция с другими облачными службами — возможность запуска локальной среды (модель гибридного развертывания Azure Logic Apps) |
Инвестиции в функции BizTalk | Azure Logic Apps, преемник BizTalk Server, включает некоторые основные возможности BizTalk Server. Например, подсистема правил Azure Logic Apps использует ту же среду выполнения, что и подсистема бизнес-правил BizTalk (BRE). Чтобы обеспечить сохранение инвестиций клиентов в BizTalk Server, конструктор рабочих процессов в Azure Logic Apps включает дополнительные возможности, такие как средство сопоставления данных при использовании Visual Studio Code, поддержка выполнения пользовательского кода и поддержка собственного XML-кода. |
Цены на основе потребления | С традиционными платформами по промежуточного слоя вы часто должны вносить значительные капитальные инвестиции в приобретение лицензий и инфраструктуры, заставляя вас "строить на пик" и создавать неэффективности. Службы Azure Integration Services предоставляют несколько моделей ценообразования, которые обычно позволяют платить за то, что вы используете. Хотя некоторые модели ценообразования позволяют и предоставляют доступ к более сложным функциям, вы можете платить за то, что вы используете. |
Нижний барьер для входа | BizTalk Server является очень способным брокером по промежуточного слоя, но требует значительного времени для изучения и получения знаний. Azure Logic Apps сокращает время, необходимое для запуска, обучения, сборки и доставки решений. Например, Azure Logic Apps включает визуальный конструктор, который позволяет создавать декларативные рабочие процессы, которые вы хотите заменить оркестрации BizTalk без кода или низкого кода. |
Подключение SaaS | Благодаря rest API становится стандартным для интеграции приложений, все больше компаний SaaS приняли этот подход для обмена данными. Корпорация Майкрософт создала расширяемую и постоянно растущую экосистему соединителей с сотнями API для работы с Корпорацией Майкрософт и не службы Майкрософт, системами и протоколами. В Azure Logic Apps можно использовать конструктор рабочих процессов для выбора операций из этих соединителей, простого создания и проверки подлинности подключений и настройки операций, которые они хотят использовать. Эта возможность ускоряет разработку и обеспечивает большую согласованность при проверке подлинности доступа к этим службам с помощью OAuth2. |
Несколько географических развертываний | В настоящее время Azure предлагает 60+ объявленных регионов, чем любой другой поставщик облачных служб, чтобы можно было легко выбрать центры обработки данных и регионы, подходящие для вас и ваших клиентов. Это позволяет развертывать решения согласованно во многих географических регионах и предоставляет возможности как с точки зрения масштабируемости, так и избыточности. |
Что такое Azure Logic Apps?
Azure Logic Apps — это облачная и гибридная служба для автоматизации рабочих процессов и оркестрации бизнес-процессов, приложений и данных в гибридных средах с помощью визуального конструктора. Эта служба входит в состав служб Azure Integration Services, которые являются набором облачных, бессерверных, масштабируемых и управляемых корпорацией Майкрософт стандартных блоков для создания комплексных решений интеграции и переноса существующих решений BizTalk Server:
Служба | Description |
---|---|
Приложения логики Azure | Создание и запуск рабочих процессов автоматизированного приложения логики, которые управляют приложениями, данными, службами и системами. Вы можете быстро разрабатывать высокомасштабируемые решения интеграции для сценариев корпоративного и бизнес-бизнеса (B2B). Используйте конструктор визуальных рабочих процессов для оркестрации микрослужб, API и бизнес-интеграции. Чтобы увеличить масштаб и переносимость при автоматизации критически важных для бизнеса рабочих процессов, разверните и запустите в любом месте, где может выполняться Kubernetes. Вы можете создать ресурсы приложения логики "Потребление" или "Стандартный". Приложение логики потребления включает только один рабочий процесс с отслеживанием состояния, который выполняется в мультитенантных Azure Logic Apps. Приложение логики уровня "Стандартный" может включать несколько рабочих процессов с отслеживанием состояния или без отслеживания состояния, которые выполняются в однотенантных Azure Logic Apps, Среда службы приложений версии 3 или в кластерах Kubernetes с поддержкой Azure Arc (модель гибридного развертывания). Для размещения Azure Logic Apps в Службах Azure Integration Services в этом руководстве основное внимание уделяется приложениям логики уровня "Стандартный", которые обеспечивают оптимальный баланс между корпоративными функциями, затратами и гибкостью. Дополнительные сведения см. в статье Azure Logic Apps. |
Функции Azure | Написание меньшего кода, поддержание меньшей инфраструктуры и экономия затрат на запуск приложений. Без необходимости развертывать и поддерживать серверы в облачной инфраструктуре предоставляются все актуальные ресурсы, необходимые для поддержания работы приложений. Дополнительные сведения см. в статье Функции Azure. |
Azure Data Factory | Визуально интегрируйте все источники данных с помощью более чем 90 встроенных соединителей без дополнительных затрат. Легко создавать извлечение, преобразование и загрузку (ETL) и извлечение, загрузку и преобразование (ELT) обрабатывает код без кода в интуитивно понятной среде или вы можете написать собственный код. Чтобы разблокировать бизнес-аналитику, доставьте интегрированные данные в Azure Synapse Analytics. Дополнительные сведения см. в разделе Фабрика данных Azure. |
Служебная шина Azure | Передача данных между приложениями и службами даже в автономном режиме в виде сообщений с помощью этого высоконадежного брокера корпоративных сообщений. Получите большую гибкость при брокере сообщений между клиентом и сервером с структурированной первой и предварительной отправкой сообщений (FIFO), возможностями публикации и подписки и асинхронными операциями. Дополнительные сведения см. в Служебная шина Azure. |
Сетку событий Azure | Интеграция приложений с использованием событий, предоставляемых брокером событий в назначения подписчиков, таких как службы Azure, другие приложения или любая конечная точка, в которой сетка событий имеет сетевой доступ. Источники событий могут включать другие приложения, службы SaaS и службы Azure. Дополнительные сведения см. в Сетка событий Azure. |
Управление API Azure | Разверните шлюзы API параллельно и оптимизируйте поток трафика с помощью API, размещенных в Azure, других облаках и локальной среде. Соблюдайте требования к безопасности и соответствию требованиям, при этом вы пользуетесь унифицированным интерфейсом управления и полной наблюдаемостью во всех внутренних и внешних API. Дополнительные сведения см. в Управление API Azure. |
Дополнительные службы Azure
Помимо описанных ранее служб, корпорация Майкрософт также предлагает следующие дополнительные службы, которые предоставляют базовые возможности для служб Azure Integration Services и которые, скорее всего, будут использоваться в проекте миграции:
Служба | Description |
---|---|
Хранилище Azure | Предоставляет высокодоступное, масштабируемое, устойчивое, безопасное и современное хранилище для различных объектов данных в облаке. Эти объекты данных можно получить из любой точки мира по протоколу HTTP или HTTPS с помощью REST API. Службы Azure Integration Services используют эти возможности для безопасного хранения данных конфигурации и телеметрии для вас во время передачи транзакций через платформу. Дополнительные сведения см. в служба хранилища Azure. |
Управление доступом на основе ролей в Azure (Azure RBAC) | Управление доступом к облачным ресурсам, что является критической функцией для любой организации, используюющей облако. Azure RBAC — это система авторизации, основанная на Azure Resource Manager, которая обеспечивает точное управление доступом к ресурсам Azure. Вы можете управлять доступом к ресурсам Azure, тем, что они могут сделать с этими ресурсами, и какие области они могут получить к ним доступ. Дополнительные сведения см. в разделе Azure RBAC. |
Azure Key Vault | Предоставляет возможности для решения проблем, связанных с управлением секретами, управлением ключами и управлением сертификатами. Службы Azure Integration Services обеспечивают интеграцию с Azure Key Vault с помощью параметров конфигурации приложения и через соединитель. Эта возможность позволяет хранить секреты, учетные данные, ключи и сертификаты в безопасном, но удобном режиме. Дополнительные сведения см. в Azure Key Vault. |
Политика Azure | Предоставляет возможности, которые помогают применять стандарты организации и оценивать соответствие масштабируемым образом. С помощью панели мониторинга соответствия вы получите агрегированное представление, чтобы вы могли оценить общее состояние среды с возможностью детализации до каждого ресурса, детализации по политике. Службы Azure Integration Services интегрируются с Политика Azure, чтобы эффективно реализовать широкое управление. Дополнительные сведения см. в статье Что такое служба "Политика Azure"? |
Сети Azure | Предоставляет широкий спектр сетевых возможностей, включая подключение, службы защиты приложений, службы доставки приложений и мониторинг сети. Службы Azure Integration Services используют эти возможности для обеспечения подключения между службами с помощью виртуальных сетей и частных конечных точек. Дополнительные сведения см. в статье "Сеть Azure". |
Центры событий Azure | Создавайте динамические конвейеры данных и немедленно реагируйте на бизнес-задачи, потоковая передачу миллионов событий в секунду из любого источника с помощью этой полностью управляемой службы приема данных в режиме реального времени, которая является простой, доверенной и масштабируемой. Управление API выполняет пользовательское ведение журнала с помощью Центров событий, которое является одним из лучших решений при реализации решения для отслеживания, разделенного в Azure. Дополнительные сведения см. в статье Центры событий Azure. |
База данных SQL Azure | В какой-то момент может потребоваться создать пользовательские стратегии ведения журнала или пользовательские конфигурации для поддержки решений интеграции. Хотя SQL Server обычно используется в локальной среде, База данных SQL Azure может предложить жизнеспособное решение при переносе локальных баз данных SQL Server в облако. Дополнительные сведения приведены в статье База данных SQL Azure. |
Настройка приложения Azure | Централизованное управление параметрами приложения и флагами компонентов. Современные программы, особенно работающие в облаке, обычно имеют множество распределенных компонентов по природе. Распространение параметров конфигурации между этими компонентами может привести к сложной устранению ошибок во время развертывания приложения. С помощью Конфигурация приложений вы можете хранить все параметры приложения и защищать их доступ в одном месте. Дополнительные сведения см. в Конфигурация приложений Azure. |
Azure Monitor | Application Insights, которая является частью Azure Monitor, обеспечивает управление производительностью приложений и мониторинг для динамических приложений. Храните данные телеметрии приложений и отслеживайте общую работоспособность платформы интеграции. Вы также можете задать пороговые значения и получать оповещения, когда производительность превышает настроенные пороговые значения. Дополнительные сведения см. в разделе Application Insights. |
Azure Automation | Автоматизация задач управления Azure и оркестрация действий в внешних системах в Azure. Создан на основе рабочего процесса PowerShell, благодаря чему можно использовать множество возможностей этого языка. Подробнее см. в разделе Служба автоматизации Azure. |
Поддерживаемые возможности разработчика
В этом разделе описаны средства разработчика, которые поддерживают сервер BizTalk и Службы Azure Integration Services:
Предложение | Продукт или служба с поддерживаемыми инструментами |
---|---|
BizTalk Server | Каждая версия BizTalk Server поддерживает определенную версию Visual Studio. Например, BizTalk Server 2020 поддерживает Visual Studio 2019 Enterprise или Professional. Однако Visual Studio Community Edition не поддерживается. |
Службы интеграции Azure | — Azure Logic Apps (стандартный): портал Azure и Visual Studio Code — Azure Logic Apps (потребление): портал Azure и Visual Studio Code — Функции Azure: портал Azure, Visual Studio Code и Visual Studio 2022 — Azure Управление API: портал Azure и Visual Studio Code — Служебная шина Azure: портал Azure и обозреватель служебная шина — Фабрика данных Azure: портал Azure и Visual Studio 2015 |
BizTalk Server и Azure Logic Apps
Чтобы сравнить BizTalk Server с Azure Logic Apps и обсудим, как выполнить миграцию, сначала кратко сводные сведения о том, что делает BizTalk Server. Первоначально доступно в 2000 году BizTalk Server — это локальная, стабильная, по промежуточного слоя платформа, которая подключает различные системы с помощью адаптеров. Эта платформа работает в качестве брокера между предприятиями, системами или приложениями и теперь является хорошо установленной платформой интеграции. Чтобы упростить задачу в сочетании различных систем, разработанных на разных языках и которые могут быть подключены с помощью различных протоколов и форматов, BizTalk Server предлагает следующие основные возможности:
Оркестрация (бизнес-поток)
Предоставляет возможность создания и запуска оркестрации или графически определенных бизнес-процессов.
Обмен сообщениями
Предоставляет возможность взаимодействия с широким спектром программных приложений. Адаптеры позволяют компоненту обмена сообщениями BizTalk Server взаимодействовать с различными протоколами и форматами данных.
Подсистема BizTalk Server включает следующие компоненты:
Компонент | Description |
---|---|
Подсистема бизнес-правил (BRE) | Вычисляет сложные наборы правил. |
Единый вход предприятия | Предоставляет возможность сопоставлять сведения о проверке подлинности между системами Windows и не windows. |
Мониторинг бизнес-активности (BAM) | Позволяет информационным работникам отслеживать выполняющийся бизнес-процесс. |
Центр групп | Позволяет персоналу поддержки управлять подсистемой и оркестрациями, которые выполняются. |
Как работает BizTalk Server?
BizTalk Server использует архитектуру подсистемы обмена сообщениями публикации и подписки с базой данных MessageBox в центре. MessageBox отвечает за хранение сообщений, свойств сообщения, подписок, состояний оркестрации, отслеживания данных и других сведений.
Когда BizTalk Server получает сообщение, сервер передает и обрабатывает сообщение через конвейер. Этот шаг нормализует и публикует сообщение в MessageBox. Затем BizTalk Server оценивает все существующие подписки и определяет предполагаемого получателя сообщения на основе свойств контекста сообщения. Наконец, BizTalk Server направляет сообщение целевому получателю на основе подписок или фильтров. Этот получатель является оркестрацией или портом отправки, который является местом назначения, в котором BizTalk Server отправляет сообщения или источник, откуда BizTalk Server может получать сообщения. BizTalk Server передает сообщения через порт отправки, передав их через конвейер отправки. Конвейер отправки сериализует сообщения в собственный формат, ожидаемый получателем перед отправкой сообщений через адаптер.
База данных MessageBox содержит следующие компоненты:
Агент обмена сообщениями
BizTalk Server взаимодействует с MessageBox с помощью этого агента, который предоставляет интерфейсы для публикации сообщений, подписывание на сообщения, получение сообщений и многое другое.
Одна или несколько баз данных SQL Server
Эти базы данных предоставляют хранилище сохраняемости сообщений, частей сообщений, свойств сообщения, подписок, состояния оркестрации, отслеживания данных, очередей узлов для маршрутизации и т. д.
На следующем рисунке показано, как работает подсистема обмена сообщениями BizTalk Server:
Когда порт получения получает сообщение, MessageBox сохраняет это сообщение для обработки бизнес-процессов или маршрутизации на любые порты отправки, имеющие подписки на определенные сообщения.
Дополнительные сведения см. в разделе "Архитектура публикации подписки " далее в этом руководстве.
Бизнес-процессы
В этом разделе описаны варианты проектирования и создания бизнес-процессов, которые можно запускать в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
В BizTalk Server оркестрация — это исполняемые бизнес-процессы, которые могут подписываться на (получать) сообщения и публиковать (отправлять) сообщения через базу данных MessageBox. Оркестрации могут создавать новые сообщения и получать сообщения с помощью инфраструктуры подписки и маршрутизации. Когда MessageBox заполняет подписки для оркестрации, активируется новый экземпляр (запуск оркестрации), и MessageBox доставляет сообщение. При необходимости экземпляр восстанавливается и отправляется сообщение. Когда сообщения отправляются из оркестрации, они публикуются в MessageBox таким же образом, как сообщение, прибываемое в расположение получения с соответствующими свойствами, добавленными в базу данных для маршрутизации.
Чтобы включить обмен сообщениями публикации и подписки, оркестрации используют привязки, помогающие создавать подписки. Порты оркестрации — это логические порты, описывающие взаимодействие. Для доставки сообщений необходимо привязать эти логические порты к физическому порту, но этот процесс привязки не больше, чем настройка подписок для маршрутизации сообщений.
BizTalk Server предлагает следующие преимущества:
Designer-first (декларативный подход)
Проектирование сложных процессов с помощью простых средств разработки для реализации шаблонов и рабочих процессов, которые в противном случае могут оказаться трудными для реализации в коде.
Абстракция с конечными системами
Проектирование процессов с фокусом на сообщениях, а не на конечной системе. Например, при разработке решений вам не нужно беспокоиться о том, будет ли вы использовать адаптер FILE или FTP-адаптер. Вместо этого следует сосредоточиться на типе связи, независимо от способа или ответа на запрос, а также на тип сообщения, который требуется обработать. Позже при развертывании решений можно указать адаптер и конечные системы.
Приложения логики Azure
В Azure Logic Apps можно создавать исполняемые бизнес-процессы и приложения в качестве рабочих процессов приложения логики с помощью "стандартного блока" программирования с помощью визуального конструктора и предварительно созданных операций из сотен соединителей, требующих минимального кода. Рабочий процесс приложения логики начинается с операции триггера, за которой следует одна или несколько операций с каждой операцией, работающей в качестве логического шага в процессе реализации рабочего процесса. Рабочий процесс может использовать действия для вызова внешнего программного обеспечения, служб и систем. Некоторые действия выполняют задачи программирования, такие как условные (если операторы), циклы, операции с данными, управление переменными и многое другое.
Azure Logic Apps предлагает следующие преимущества:
Designer-first (декларативный подход)
Проектирование сложных процессов с помощью простых средств разработки для реализации шаблонов и рабочих процессов, которые в противном случае могут оказаться трудными для реализации в коде.
Гибкие и масштабируемые
Azure Logic Apps — это облачная, бессерверная, высокомасштабируемая служба вычислений, которая автоматически масштабируется и адаптируется в соответствии с изменяющимися бизнес-потребностями.
Подключается ко всему
Выберите из постоянно расширяющейся коллекции с сотнями предварительно созданных соединителей для создания рабочих процессов. Соединитель предоставляет операции, которые можно использовать в качестве шагов в рабочих процессах. Вы можете создавать решения интеграции для большинства служб и систем от майкрософт и партнеров, включая BizTalk Server, Salesforce, Office 365, базы данных SQL, большинство служб Azure, таких как Функции Azure, служба хранилища Azure, Служебная шина Azure, и многие другие, а также локальные приложения или системы, мейнфреймы, мидранги, SaaS и API. Если для ресурса, к которому требуется получить доступ, не существует предварительно созданного соединителя, можно использовать универсальную операцию HTTP для взаимодействия со службой или создать пользовательский соединитель.
Повторно используемые компоненты
Платформы интеграции предлагают способы решения проблем согласованным и унифицированным способом, которые часто можно достичь с помощью повторно используемых компонентов. В этом разделе описывается, как повторно использовать компоненты в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
Взаимодействия
Вы можете создавать и совместно использовать общую бизнес-логику в виде оркестрации в разных рабочих процессах, внутри одного приложения или нескольких приложений. Оркестрации можно активировать с помощью собственного механизма публикации и подписки на BizTalk Server (в разложенном режиме) или с помощью фигур оркестрации с именем "Оркестрация вызовов" для синхронных вызовов или запуска оркестрации для асинхронных вызовов.
Адаптеры
Адаптеры — это компоненты программного обеспечения, обеспечивающие подключение между BizTalk Server и торговыми партнерами, использующими распространенные протоколы данных и форматы документов. Эти компоненты упрощают отправку и получение сообщений с помощью механизма доставки, соответствующего обычно распознаваемой стандарту, например SMTP, FTP, HTTP и т. д. Адаптеры являются частью основной платформы, поэтому все существующие приложения совместно используют их. Этот уровень также можно расширить, создав настраиваемый адаптер либо собственный, либо на основе Windows Communication Foundation (WCF), с помощью платформы адаптеров BizTalk.
Схемы
Схемы определения схемы XML (XSD) позволяют получать сообщения на основе контракта в BizTalk Server. Чтобы избежать создания избыточных схем, можно ссылаться на схемы из скомпилированных сборок. Чтобы использовать общие схемы, необходимо добавить ссылку на общую сборку из проекта BizTalk.
Хотя этот шаг может звучать простым, управление изменениями общих сборок может стать сложной из-за цепочки зависимостей. Если для общей сборки требуется обновление, необходимо удалить все проекты, ссылающиеся на общую сборку из BizTalk Server, чтобы установить обновление. Тем не менее, чтобы избежать этих ограничений, можно реализовать управление версиями сборок, в которых развертывается новая версия схемы или общих схем, не нарушая существующие решения.
Карты и пользовательские functoids
Карты обеспечивают преобразование или преобразование XML-сообщений в BizTalk Server. Вы можете предоставить общий доступ к картам, но, как и общие схемы, аналогичные предупреждения применяются к общим картам. Из-за цепочки зависимостей внимательно и убедитесь, что у вас есть зрелый жизненный цикл разработки программного обеспечения для управления изменениями.
В картах functoids выполняют вычисления с помощью предопределенных формул и определенных значений, называемых аргументами. BizTalk Server предоставляет множество functoids для поддержки различных операций. Пользовательские functoids позволяют расширить диапазон доступных операций в среде сопоставления BizTalk Server.
Если вы начинаете создавать множество карт, вы поймете, что вы неоднократно реализуете аналогичную логику. Следовательно, вы найдете, что вы будете тратить время на обслуживание нескольких эквивалентных фрагментов кода, которые обычно копируются и вставляются в несколько расположений в пределах карты или между картами. Рассмотрите возможность преобразования таких фрагментов кода в настраиваемый functoid. Таким образом, вы создаете functoid только один раз, но вы можете повторно использовать functoid в столько карт, сколько вы хотите, и обновить functoid только в одном месте. Каждый пользовательский functoid развертывается как сборка .NET с помощью классов, производных от пространства имен Microsoft.BizTalk.BaseFunctoids . Одна сборка может содержать несколько пользовательских functoid.
сборки платформа .NET Framework
Эти сборки можно совместно использовать в проектах BizTalk Server. Эти сборки проще управлять с точки зрения зависимостей. Если критические изменения не существуют, обновление сборки .NET Fx требует обновления библиотеки DLL в глобальном кэше сборок (GAC), что автоматически делает изменения доступными для других сборок. Если существуют критические изменения, необходимо также обновить зависимый проект для размещения изменений в сборке платформа .NET Framework.
Пользовательские конвейеры и компоненты конвейера
Когда BizTalk Server получает и отправляет сообщения, сервер может потребоваться подготовить и преобразовать сообщения для входа и выхода из-за бизнес-причин. В BizTalk Server конвейеры предоставляют реализацию шаблона интеграции "Каналы и фильтры" и включают множество функций, таких как кодировщик JSON и декодировщик JSON, декодирования MIME или SMIME и т. д.
Если необходимо добавить сведения в контекст сообщения, требующего настройки конвейера, BizTalk Server предоставляет возможность настроить эти конвейеры путем создания настраиваемых компонентов конвейера. Настраиваемый компонент конвейера — это a.NET класс, который используется для реализации нескольких интерфейсов BizTalk, а затем используется на разных этапах любого пользовательского конвейера. Чтобы написать код для такого компонента, можно использовать C# или Visual Basic для .NET.
Политики обработчика правил
Политика обработчика бизнес-правил — это другой вид артефакта, который можно совместно использовать в приложениях BizTalk Server, развернутых в той же группе BizTalk. Если у вас есть общие правила подсистемы бизнес-правил, например, связанные с маршрутизацией сообщений, вы можете управлять этими правилами в одном расположении и совместно использовать их в установленных приложениях BizTalk. Подсистема бизнес-правил кэширует эти правила, поэтому при внесении обновлений в эти правила необходимо перезапустить службу обновления подсистемы бизнес-правил. В противном случае изменения будут выбраны в следующем тайм-ауте кэша.
Приложения логики Azure
Учетная запись интеграции
Для Azure Logic Apps учетная запись интеграции — это облачный контейнер и ресурс Azure, предоставляющий централизованный доступ к многократно используемым артефактам. Для рабочих процессов приложения логики потребления эти артефакты включают в себя торговые партнеры, соглашения, схемы XSD, карты XSLT, карты на основе шаблонов Liquid, сертификаты, пакетные конфигурации и сборки .NET Fx.
Для рабочих процессов приложений логики уровня "Стандартный" в Azure Logic Apps недавно появилась поддержка вызова сборок .NET Fx из преобразований XSLT, не требуя учетной записи интеграции. Кроме того, можно добавить схемы, карты и сборки в проект приложения логики "Стандартный" в Visual Studio Code и впоследствии развернуть в Azure.
Программные интерфейсы
API позволяют использовать цифровые интерфейсы, создавать многократно используемые данные и службы, упрощать интеграцию приложений и создавать новые цифровые продукты. С распространением и повышением зависимости от API организации должны управлять ими в качестве ресурсов первого класса на протяжении всего жизненного цикла.
Вы можете повторно использовать API, особенно управляемые с помощью Azure Управление API, в Azure Logic Apps. После добавления API-интерфейсов в Azure Управление API можно использовать соединитель Управление API с рабочими процессами приложения логики для упрощения доступа к API в управляемом и управляемом режиме. Azure Logic Apps также поддерживает создание и использование пользовательских API, чтобы организация могла способствовать повторному использованию в организации и избегать ненужных избыточных соединителей, которые разработчики могли бы в противном случае создать. Пользовательские API-интерфейсы также демократизируют, кто может использовать эти API, а не выясните механику использования определенного API.
Настраиваемые соединители
Если предварительно созданные соединители не существуют для API, которые вы хотите использовать, можно упаковать внешний или внешний API с помощью схемы OpenAPI, чтобы создать настраиваемый соединитель и получить доступ к ним из рабочих процессов приложения логики потребления с соответствующими разрешениями. Настраиваемый соединитель создает контракт между Azure Logic Apps и API, который позволяет легко сборке сообщений запросов и Azure Logic Apps получать типизированный ответ, который можно использовать в подчиненных действиях. Поддерживаются интерфейсы REST API и API SOAP, и они могут ссылаться на общедоступные API или частные API, которые существуют в локальной сети.
Для рабочих процессов приложения логики уровня "Стандартный" можно создать собственные встроенные пользовательские соединители, основанные на поставщике услуг.
Реализуя пользовательский соединитель, вы упрощаете разработку, создавая общий интерфейс для отправки сообщений запросов и получения типизированных ответов. Дополнительные сведения см. в разделе "Пользовательские соединители" и API.
Адаптеры и соединители
В следующем разделе описываются понятия адаптеров и соединителей соответственно в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
Для обмена сообщениями с внешними системами, приложениями и сущностями BizTalk Server предоставляет адаптеры, которые являются компонентами COM или .NET Fx, которые передают сообщения в бизнес-конечные точки, такие как файловые системы, базы данных и пользовательские бизнес-приложения с помощью различных протоколов связи. BizTalk Server предоставляет собственные адаптеры, поддерживающие различные протоколы, например:
- Адаптер файлов, поддерживающий отправку и получение сообщений из расположения файла
- Адаптеры для протоколов EDI, FTP, HTTP, MSMQ, SMTP, POP3 и SOAP
- Адаптер для Служб Windows SharePoint Services
Платформа адаптеров BizTalk предоставляет стабильный открытый механизм для всех адаптеров для реализации или доступа к работе с подсистемой обмена сообщениями BizTalk Server. Интерфейсы в пространстве имен Microsoft.BizTalk.Adapter.Framework позволяют адаптерам изменять страницы свойств конфигурации. Платформа адаптеров BizTalk также предоставляет возможность импортировать службы и схемы в проект BizTalk. Адаптеры партнеров также доступны от различных поставщиков и членов сообщества. Список известных адаптеров см. в разделе BizTalk Server: список сторонних адаптеров.
Приложения логики Azure
При создании рабочих процессов с помощью Azure Logic Apps можно использовать предварительно созданные соединители, чтобы легко и быстро работать с данными, событиями и ресурсами в других приложениях, службах, системах, протоколах и платформах, как правило, без необходимости писать код. Azure Logic Apps предоставляет постоянно расширяющуюся коллекцию сотнями соединителей, которые можно использовать. Вы можете создавать решения интеграции для многих служб и систем, облачных или локальных служб, от майкрософт и партнеров, таких как BizTalk Server, Salesforce, Office 365, базы данных SQL, большинство служб Azure, мейнфреймы, API и многое другое. Некоторые соединители предоставляют операции, которые выполняют операции программирования, такие как условные операторы (if), циклы, операции данных, управление переменными и т. д. Если соединитель недоступен для нужного ресурса, можно использовать универсальную операцию HTTP для взаимодействия со службой или создать пользовательский соединитель.
Технически соединитель — это прокси-сервер или оболочка вокруг API, используемого базовой службой или системой для взаимодействия с Azure Logic Apps. Этот соединитель предоставляет операции, используемые в рабочих процессах для выполнения задач. Операция доступна в качестве триггера или действия со свойствами, которые можно настроить. Некоторые триггеры и действия также требуют создания и настройки подключения к базовой службе или системе. При необходимости вы также проверите проверку подлинности доступа к учетной записи пользователя.
Большинство соединителей в Azure Logic Apps — это встроенный соединитель или управляемый соединитель. Некоторые соединители доступны в обеих версиях. Доступные версии зависят от того, создаете рабочий процесс приложения логики потребления или рабочий процесс приложения логики "Стандартный".
Встроенные соединители предназначены для собственного запуска в среде выполнения Azure Logic Apps и обычно имеют более высокую производительность, пропускную способность, емкость или другие преимущества по сравнению с любыми аналогами управляемых соединителей.
Управляемые соединители развертываются, размещаются и управляются корпорацией Майкрософт в Azure. Они предоставляют триггеры и действия для облачных служб, локальных систем или того и другого. В рабочих процессах приложения логики уровня "Стандартный" все управляемые соединители группируются как соединители Azure . Однако в рабочих процессах приложения логики потребления управляемые соединители группируются как "Стандартный" или "Корпоративный" на основе их ценовой категории.
Дополнительные сведения см. в следующей документации:
- Общие сведения о встроенных соединителях
- Общие сведения об управляемых соединителях
- Управляемые соединители, доступные в Azure Logic Apps
Подключение к приложению
В следующем разделе описаны параметры подключения к другим приложениям из BizTalk Server и Служб Azure Integration Services.
BizTalk Server
Адаптеры предоставляют возможности подключения в BizTalk Server и выполняются локально на сервере BizTalk, который выполняет операцию отправки или получения. Доступны примерно 30 встроенных адаптеров, а небольшая экосистема адаптеров ISV обеспечивает дополнительные функциональные возможности. С помощью этих адаптеров, работающих локально, проверка подлинности Windows — это популярный метод проверки подлинности. Часто используемые адаптеры включают FILE, SFTP, SQL, WCF (Basic-HTTP), HTTP и SMTP. В этом списке можно определить, что адаптеры в BizTalk Server в основном являются адаптерами протокола. В результате адаптеры обычно используют шаблон обмена сообщениями, ориентированный на сообщения, где полное сообщение обменивается с другими системами, где эти системы отвечают за анализ данных перед загрузкой данных в окончательное хранилище данных.
Приложения логики Azure
Соединители предоставляют возможности подключения в Azure Logic Apps и предлагают абстракции поверх API, которые обычно принадлежат базовой системе SaaS. Например, такие службы, как SharePoint, создаются с помощью первого подхода API, в котором API предоставляют функциональность службе для конечных пользователей, но те же функции предоставляются для других систем для вызова через API. Чтобы упростить вызов этих API, соединители используют метаданные для описания контракта обмена сообщениями, чтобы разработчики знали, какие данные ожидаются в запросе и в ответе.
На следующем снимке экрана показан процесс поиска операций соединителя в конструкторе для рабочего процесса приложения логики уровня "Стандартный" в Azure Logic Apps с одним клиентом. При выборе всписке среды выполнения встроенные соединители, такие как Функции Azure, Служебная шина Azure, IBM DB2, SQL Server, служба хранилища Azure, файловая система, HTTP и многое другое. При выборе общего доступа можно найти более 1000 соединителей, включая другие соединители Microsoft SaaS, партнерские соединители SaaS и т. д.
Веб-службы и подключение API
В следующих разделах описана поддержка подключения веб-служб и API в BizTalk Server и Azure Logic Apps.
BizTalk Server
Поддержка веб-служб — это популярная возможность в BizTalk Server и доступна интеграция с Windows Communication Foundation (WCF). Эта поддержка в BizTalk входит в две категории: публикация и использование служб WCF.
Адаптеры WCF обеспечивают поддержку стандартов WS-* , таких как WS-Адресация, WS-Security и WS-AtomicTransaction. Однако WS-ReliableMessaging не поддерживается в этом выпуске адаптеров WCF.
Адаптеры WCF поддерживают Единый вход (единый вход) через олицетворение и получение билета корпоративного единого входа для использования единого входа с адаптерами WCF. Эта возможность позволяет контексту пользователя передаваться по системам. С точки зрения проверки подлинности проверка подлинности службы поддерживает следующие типы: Нет, Windows и Сертификат. Проверка подлинности клиента поддерживает следующие типы: Anonymous, UserName, Windows и Certificate. Поддерживаемые режимы безопасности включают следующие типы: транспорт, сообщение и смешанные.
WCF поддерживает транзакции с помощью протокола WS-AtomicTransaction, который можно найти в адаптерах WCF, таких как WCF-WsHttp, WCF-NetTcp и WCF-NetMsmq. Эта возможность поддерживается в следующих сценариях:
- Транзакционная отправка сообщений в базу данных MessageBox
- Транзакционная передача сообщений из MessageBox в назначение транзакций
Область транзакций ограничена компонентом MessageBox. Например, оркестрация BizTalk не может участвовать в транзакции клиента. Аналогичным образом конечная точка назначения не может участвовать в транзакции, инициированной оркестрацией BizTalk.
Расширяемость WCF доступна через пользовательские привязки WCF. Вам потребуется скомпилировать и добавить пользовательский код в глобальный кэш сборок (GAC). Кроме того, необходимо обновить файл machine.config, чтобы включить новое расширение. После установки привязки расширение отображается для адаптеров WCF-Custom и WCF-CustomIsolated.
BizTalk Server может предоставлять расположения WCF-BasicHTTP как конечные точки в Azure Управление API при использовании консоли администрирования BizTalk. Вы также можете предоставлять конечные точки SOAP через Управление API из BizTalk Server с помощью Управление API в портал Azure. Дополнительные сведения см. в статье Публикации конечных точек WCF-BasicHTTP в Управление API.
Приложения логики Azure
Модель подключения в Azure Logic Apps отличается от BizTalk Server, частично из-за эволюции экономики API. Поскольку больше организаций предоставляют доступ к базовым системам и данным, необходим подход, не зависящий от платформы. REST теперь является доминирующим архитектурным подходом к проектированию современных веб-служб.
В Azure Logic Apps REST — это подход по умолчанию для подключения систем. Так как корпорация Майкрософт и другие поставщики программного обеспечения предоставляют службы RESTful на основе своих систем и данных, Azure Logic Apps может предоставлять и использовать эти сведения. Спецификация OpenAPI позволяет использовать эту возможность как для людей, так и для компьютеров, чтобы понять взаимодействие между клиентом и сервером с помощью метаданных. В рамках этого понимания полезные данные запроса и ответа являются производными, что означает, что динамическое содержимое можно использовать для заполнения входных данных действия рабочего процесса и использования выходных данных ответа в подчиненных действиях.
На основе поставщика программного обеспечения, реализующего базовую службу, вызываемую соединителем, схемы проверки подлинности зависят от соединителя. Как правило, эти схемы включают следующие типы:
Корпорация Майкрософт предоставляет надежные уровни защиты путем шифрования данных во время передачи и неактивных данных. Когда трафик клиента Azure перемещается между центрами обработки данных, вне физических границ, которые не контролируются корпорацией Майкрософт или от имени Корпорации Майкрософт, метод шифрования уровня связи с данными, использующий стандарты безопасности MAC IEEE 802.1AE MAC (MACsec), применяется от точки к точке через базовое сетевое оборудование.
Корпорация Майкрософт предоставляет возможность использовать протокол TLS для защиты данных, перемещающихся между облачными службами и клиентами. Центры обработки данных Майкрософт устанавливают подключение по протоколу TLS с клиентскими системами, подключающимися к службам Azure. TLS обеспечивает надежную проверку подлинности, конфиденциальность сообщений и целостность сообщений, что позволяет обнаруживать изменения, перехват и подделку сообщений вместе с взаимодействием, гибкостью алгоритма и простотой развертывания и использования.
Хотя этот раздел посвящен подключению RESTful через соединители, вы можете реализовать подключение веб-службы SOAP с помощью пользовательского интерфейса соединителя или с помощью интерфейса Управление API, который обеспечивает большие возможности SOAP. Дополнительные сведения см. в статье "Увеличение бизнес-ценности путем интеграции устаревших ресурсов SOAP" с Azure logic Apps и Azure APIM.
Блокировка использования адаптера или соединителя
В следующих разделах описаны параметры предотвращения использования адаптера или соединителя соответственно в BizTalk Server и Azure Logic Apps.
BizTalk Server
BizTalk Server не включает концепцию блокировки конкретных адаптеров из разных приложений, но их использование в приложениях можно заблокировать, удалив эти адаптеры из среды. Адаптеры в BizTalk Server являются частью параметров платформы, поэтому установленные адаптеры доступны для всех пользователей. Вы также можете определить определенные обработчики получения и отправки для каждого адаптера, определяющие компьютеры, принадлежащие группе BizTalk, которая может выполнять или обрабатывать эти обработчики.
Приложения логики Azure
Если ваша организация не разрешает подключаться к ограниченным или неподтвержденным ресурсам с помощью управляемых соединителей в Azure Logic Apps, можно заблокировать возможность создания и использования этих подключений в рабочих процессах приложения логики. С помощью Политика Azure можно определить и применить политики, которые препятствуют созданию или использованию подключений для соединителей, которые требуется заблокировать. Например, из соображений безопасности может быть желательно заблокировать подключения к тем или иным платформам социальных сетей или другим службам и системам.
Устойчивость сообщений
В следующем разделе описывается сохраняемость сообщений в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
База данных MessageBox предоставляет еще одно преимущество, выступая в качестве точки сохраняемости, которая гарантирует сохранение сообщения в хранилище перед попыткой отправить в конечную точку. Если сообщение не удается отправить после исчерпания любых настроенных попыток повторных попыток, сообщение приостановлено и хранится в MessageBox.
Администратор может возобновить приостановленные сообщения из консоли администрирования BizTalk. Такое же поведение происходит при использовании оркестрации. Среда выполнения оркестрации сохраняет бизнес-логику, которую можно возобновить, если что-то пошло не так. Например, можно возобновить сообщение в оркестрации в следующих сценариях:
- Сообщение, отправленное в не атомарную область
- В конце области транзакций
- При запуске нового экземпляра оркестрации (фигура запуска оркестрации)
- В точке останова отладки
- Когда подсистема решит обезвоживать
- После завершения оркестрации
- Когда система завершает работу
BizTalk Server предоставляет все эти возможности вне коробки. Вам не нужно беспокоиться о реализации сохраняемости, так как BizTalk Server обрабатывает это для вас.
Приложения логики Azure
Azure Logic Apps обеспечивает устойчивость сообщений следующим образом:
Рабочие процессы с отслеживанием состояния, используемые по умолчанию в приложениях логики потребления и доступные в стандартных приложениях логики, имеют контрольные точки, которые отслеживают состояние рабочего процесса и хранят сообщения по мере передачи действий рабочего процесса. Эта функция обеспечивает доступ к богатым данным, хранящимся в журнале выполнения триггера и экземпляра рабочего процесса, где можно просмотреть подробные входные и выходные значения.
Можно повторно запустить экземпляр рабочего процесса с помощью портал Azure или API. В настоящее время весь экземпляр рабочего процесса выполняется независимо от того, где произошел сбой в предыдущем запуске. Это означает, что сообщения доставляются по крайней мере один раз, и что идемпотентная обработка происходит у потребителей. Вы также можете повторно запустить экземпляр рабочего процесса, начиная с определенного действия, в настоящее время в предварительной версии. Эта возможность доступна для всех действий, за исключением сценариев, не последовательных и сложных параллелизмов.
С помощью обмена сообщениями с блокировкой, доступной в Служебная шина Azure, вы можете зафиксировать сообщение после успешного выполнения сообщения или отказаться от сообщения при сбое. Чтобы использовать эту возможность в Azure Logic Apps, выберите соединитель Служебная шина Azure. Зафиксированное сообщение удаляется из очереди сообщений, а отброшенное сообщение разблокируется и доступно для обработки клиентами. Путь к блокировке — отличный способ достичь "ровно один раз" обмена сообщениями.
Архитектура публикации и подписки
В следующих разделах описаны параметры реализации шаблона публикации подписки на BizTalk Server и Azure Logic Apps.
BizTalk Server
Возможности публикации-подписки (pub-sub) существуют через базу данных MessageBox, которая описана ранее в разделе о работе BizTalk Server. Популярным способом создания подписок является использование улучшенных свойств, которые позволяют определять определенные элементы или атрибуты в определенной схеме сообщений как свойство "Повышение". Затем вы можете установить подписки для фильтрации сообщений на основе определенных критериев в отношении повышенного свойства. Например, если вы повысили элемент схемы с именем City, можно создать подписку, которая фильтрует элемент City для определенных городов. Если выполнены условия, подписка, порт отправки или оркестрация получает копию сообщения.
Приложения логики Azure
Благодаря архитектуре, отличной от BizTalk Server, большинство служб в Службах Azure Integration Services основаны на событиях. С помощью Служебная шина Azure Azure Logic Apps поддерживает создание решений публикации и подписки. Служебная шина Azure — это полностью управляемый корпоративный брокер сообщений с очередями сообщений и разделами публикации и подписки на нее в пространстве имен. Вы можете использовать Служебная шина Azure для развязки приложений и служб друг от друга, что обеспечивает следующие преимущества:
- Балансировка нагрузки между конкурирующими работниками.
- Безопасная маршрутизация и передача данных с помощью управления между службами и границами приложений.
- Координата транзакционной работы, требующая высокой надежности.
Azure Logic Apps включает соединитель Служебная шина Azure, который можно использовать для публикации и подписки на сообщения. Преимущество заключается в том, что вы можете использовать обмен сообщениями независимо от рабочего процесса. В отличие от BizTalk Server, обмен сообщениями отделяется от платформы рабочего процесса. Хотя возможности обмена сообщениями и рабочих процессов разделены в Azure Logic Apps, вы можете создавать подписки на сообщения в Служебная шина Azure, которые поддерживают свойства сообщения (свойства пользователя). Эти свойства можно использовать для предоставления пар "ключ-значение", которые оцениваются фильтрами, созданными в подписке раздела. Эти свойства пользователя определяются при настройке операции Служебная шина Azure путем добавления одной или нескольких пар "ключ-значение". Демонстрация см. в следующем видеоролике: обмен сообщениями в пабе с помощью Служб Azure Integration Services — часть 2 маршрутизации на основе содержимого.
За пределами служб Azure Integration Services можно также реализовать сценарии публикации и подписки с помощью Кэш Azure для Redis.
Подсистема бизнес-правил
В следующем разделе описаны параметры настройки бизнес-правил в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
BizTalk Server включает подсистему правил пересылки, которая позволяет создавать правила if-then-else с помощью визуального редактора. Эти правила можно упаковать в политику, которую можно перенести в другие среды в ИТ-ландшафте. Эти политики также могут получить доступ к схемам XSD, коду .NET Fx и таблицам баз данных SQL Server для поиска данных и обогащения выходных данных.
Приложения логики Azure
Azure Logic Apps включает обработчик правил Azure Logic Apps в настоящее время в общедоступной предварительной версии. Этот механизм правил включает среду выполнения подсистемы бизнес-правил BizTalk (BRE), чтобы использовать существующие политики BizTalk BRE. В настоящее время поддержка существует только для фактов XML и платформа .NET Framework.
Преобразование данных
В следующих разделах описаны возможности преобразования данных в BizTalk Server и Azure Logic Apps.
BizTalk Server
Предоставляет широкие возможности для преобразования XML-сообщений из одного формата в другой. Преобразование данных использует карты XSLT, поддерживающие объекты расширения, позволяющие внедрять пользовательский код .NET Fx в середину этих карт. Вы также можете использовать встроенные functoids, которые предоставляют многократно используемые функции, которые помогают создавать богатые карты.
Помимо основных преобразований XML, BizTalk Server также предоставляет кодировку и декодирование для форматов CSV и JSON, чтобы можно было преобразовать между этими форматами и XML, обеспечивая поддержку различных форматов.
Приложения логики Azure
Пакет интеграции Enterprise
Этот компонент следует аналогичным понятиям в BizTalk Server и упрощает использование возможностей B2B в Azure Logic Apps. Однако одним из основных различий является то, что пакет интеграции Enterprise архитектурно основан на учетных записях интеграции. Эти учетные записи упрощают хранение, управление и использование артефактов, таких как торговые партнеры, соглашения, карты (шаблоны XSLT или Liquid), схемы и сертификаты для сценариев B2B.
Шаблоны Liquid
Для базовых преобразований JSON в рабочих процессах приложения логики можно использовать встроенные операции с данными, такие как действие Compose или действие Анализа JSON. Однако в некоторых сценариях могут потребоваться расширенные и сложные преобразования, включающие такие элементы, как итерации, потоки управления и переменные. Для преобразований между JSON в JSON, JSON на текст, XML в JSON или XML можно создать шаблон Liquid, описывающий требуемое сопоставление или преобразование с помощью языка шаблона Liquid с открытым исходным кодом.
Операции XML
Для преобразований XML в рабочих процессах приложения логики можно использовать встроенные операции XML, такие как Compose XML с действием схемы и синтаксический анализ XML с действием схемы .
Схемы EDI
Схемы документов EDI определяют текст типа документа транзакции EDI. Для рабочих процессов приложения логики все схемы EDI BizTalk в репозитории Microsoft Integration GitHub общедоступны для использования.
Стандартные приложения логики
В портал Azure можно отправлять карты и схемы непосредственно в ресурс приложения логики "Стандартный". Если вы работаете с проектом приложения логики "Стандартный" в Visual Studio Code, эти артефакты можно передать в соответствующие папки в папке Artifacts без использования учетной записи интеграции. Вы также можете вызывать пользовательские скомпилированные сборки из карт XSLT.
Функции Azure
Вы можете выполнять преобразования шаблонов XSLT или Liquid с помощью C# или любого другого языка программирования для создания функции Azure, которую можно вызвать с помощью Azure Управление API или Azure Logic Apps.
Сетевое соединение
В следующем разделе описаны функции и возможности сетевого подключения в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
При использовании BizTalk Server всегда устанавливается в серверной среде, сетевое подключение зависит от конфигурации сети базового сервера. При настройке сетевого подключения для BizTalk Server обычно необходимо настроить следующие области:
- Зависимости
- Входящие и исходящие подключения к конечным системам
Конфигурация зависимостей
Чтобы полностью настроить BizTalk Server в многосерверной среде, необходимо обратить особое внимание на все зависимости сетевого подключения, которые обычно включают конфигурацию брандмауэра для включения портов TCP и UDP для известных служб или протоколов. Например, такие службы и протоколы включают доступ к подсистеме SQL Server, координатору распределенных транзакций Майкрософт (MSDTC), кластеризованным сетевым дискам, службам единого входа при установке на другом сервере, а SharePoint — это все службы, которые необходимо настроить, создав правила для входящего и исходящего трафика для реализации подключения.
Конфигурация входящего и исходящего подключения
После полной настройки BizTalk Server и подготовки к развертыванию приложений обязательно реализуйте правила брандмауэра, которые позволяют экземплярам узлов подключаться и получать доступ к различным службам, независимо от того, являются ли они частью внутренней или внешней сети. Если вы думаете о подключении к конечным системам за пределами сети организации, необходимо также включить вопросы безопасности. Различные системы полагаются на определение списка разрешенных IP-адресов в качестве первой линии защиты, поэтому в идеале BizTalk Server направляет все исходящие связи через четко определенный список общедоступных IP-адресов.
Если партнерские службы пытаются связаться с BizTalk Server, убедитесь, что они не достигают экземпляра, который находится в сети вашей организации или внутреннем уровне, где могут быть доступны основные службы организации. Вместо этого предоставьте службам партнеров доступ к конечной точке, которая существует в сети периметра, также называемой демилитаризованной зоной (DMZ), которая является самой внешней границей сети организации. Однако службы, в которых BizTalk Server должны маршрутизировать сообщения в сети вашей организации, поэтому они должны иметь доступ к такому внутреннему уровню.
Для достижения этих сценариев существует несколько подходов, например:
- Реализация BizTalk Server в сети периметра и разрешение только собственных служб или экземпляров узлов для доступа к сети организации
- Настройте два сервера BizTalk с одним в сети периметра и другой в сети вашей организации. Затем сервер в сети периметра публикует сообщения, которые использует сервер в сети организации.
- Разработка пользовательских приложений или программного обеспечения устройства, таких как NetScaler и F5, которые могут выступать в качестве обратных прокси-серверов, получать сообщения от имени BizTalk в сети периметра и перенаправлять эти вызовы на BizTalk Server.
Приложения логики Azure
Входящие и исходящие подключения
Azure предоставляет несколько способов изоляции своих служб в пределах сетевой границы и подключения локальных и облачных рабочих нагрузок. В следующем списке описаны различные способы интеграции ресурсов Azure с ресурсами внутри периметра сети.
Локальный шлюз данных
Этот шлюз выступает в качестве моста между Azure и ресурсами в пределах периметра сети, обеспечивая быструю и безопасную передачу данных между локальными данными и различными облачными службами Майкрософт. К этим службам относятся Azure Logic Apps, Microsoft Power BI, Microsoft Power Apps, Microsoft Power Automate и Службы Azure Analysis Services. С помощью этого шлюза можно хранить базы данных и другие источники данных в локальных сетях и безопасно использовать локальные данные в облачных службах.
Гибридные подключения
Как служба Azure, так и функция в службе приложение Azure, гибридные подключения поддерживают сценарии и предоставляют возможности, кроме тех, которые используются в службе приложение Azure. Дополнительные сведения об использовании вне службы приложение Azure см. в статье "Гибридные подключения Azure Relay". В службе приложение Azure можно использовать гибридные подключения для доступа к ресурсам приложений в любой сети, которая может выполнять исходящие вызовы к Azure через порт 443. Гибридные подключения предоставляют доступ из приложения к конечной точке TCP и не позволяют получить новый способ доступа к приложению. В службе приложение Azure каждое гибридное подключение сопоставляется с одним узлом TCP и сочетанием портов. Эта функция позволяет приложениям получать доступ к ресурсам в любой ОС, если существует конечная точка TCP. Гибридные подключения не знают или не заботятся о протоколе приложения или о том, к чему вы хотите получить доступ. Эта функция просто предоставляет сетевой доступ.
Интеграция виртуальной сети
Интеграция с Azure виртуальная сеть позволяет подключить ресурс Azure к виртуальной сети, настроенной в Azure, предоставляя приложению доступ к ресурсам в этой виртуальной сети. Интеграция виртуальной сети в Azure Logic Apps используется только для выполнения исходящих вызовов из ресурса Azure в виртуальную сеть.
С помощью пиринга между локальными сетями и службами Azure можно подключить локальные сети к Azure, что обеспечивает двунаправленное подключение между локальными ресурсами и службами Azure. Службы Azure Integration Services обеспечивают подключение к виртуальной сети, что позволяет выполнять гибридную интеграцию. На следующем рисунке показан ресурс приложения логики уровня "Стандартный" с открытой страницей "Сеть" и включена интеграция виртуальной сети, как выделено в поле "Исходящий трафик ". Эта конфигурация гарантирует, что весь исходящий трафик покидается из этой виртуальной сети.
Частные конечные точки
Частная конечная точка — это сетевой интерфейс, который использует частный IP-адрес из виртуальной сети. Этот сетевой интерфейс приватно и безопасно подключается к ресурсу Azure, на базе Приватный канал Azure. Включив частную конечную точку, вы переносите этот ресурс Azure в виртуальную сеть и разрешаете ресурсам в сети выполнять входящий вызов к ресурсу Azure.
В следующей таблице показаны методы сетевого подключения, которые могут использовать каждый ресурс Служб Azure Integration Services:
Ресурс | Локальный шлюз данных | Гибридные подключения | Интеграция виртуальной сети | Частные конечные точки |
---|---|---|---|---|
Управление API Azure | ✅ | ✅ | ✅ | |
Azure Logic Apps (потребление) | ✅ | |||
Azure Logic Apps (стандартный) | ✅ (с соединителями Azure) |
✅ (со встроенными соединителями) |
✅ (со встроенными соединителями) |
✅ |
Служебная шина Azure | ✅ | ✅ | ||
Сетку событий Azure |
Пользовательский код
В следующих разделах описаны параметры разработки и запуска собственного кода в BizTalk Server и Azure Logic Apps.
BizTalk Server
Вы можете расширить BizTalk различными способами с помощью пользовательского кода .NET Fx, например:
Возможность | Description |
---|---|
Встроенный код | Встроенный код C# можно написать в фигуре оркестрации. Вы также можете написать встроенный код в схеме BizTalk. В обоих сценариях фрагменты кода обычно просты в природе и не могут быть отлаживаемы. |
Скомпилированные сборки | Эти сборки можно вызвать из следующих мест: — Фигуры выражений в оркестрации — Карты BizTalk с помощью functoid скрипта — Политики обработчика бизнес-правил — конвейеры в качестве настраиваемых компонентов конвейера Вы можете отлаживать скомпилированные сборки, подключив отладчик Visual Studio к соответствующему процессу Windows узла. |
Пользовательские адаптеры | BizTalk Server включает множество встроенных адаптеров, но при необходимости вы всегда можете создать собственный адаптер. |
Пользовательские поведения WCF | BizTalk Server включает множество встроенных адаптеров с большинством на основе Windows Communication Foundation (WCF). В некоторых случаях может потребоваться расширить свои возможности путем разработки пользовательских действий, таких как применение заголовка OAuth к системным коммуникациям. |
Расширяемость в картах BizTalk Server | — Встроенный код можно создать с помощью C#, JScript, Visual Basic, XSLT или XSLT-шаблонов вызовов для подавления некоторых ограничений или трудностей с использованием встроенных functoids. — Можно вызвать внешнюю сборку с помощью Functoid скрипта. — Вы можете создавать пользовательские functoids для использования во всех картах. |
Приложения логики Azure
Azure Logic Apps предоставляет возможность создавать и запускать код .NET из рабочего процесса приложения логики "Стандартный". Для этого необходимо использовать Visual Studio Code с расширением Azure Logic Apps (standard).
Кроме того, соединитель операций встроенного кода предоставляет действия с именем Execute JavaScript Code, Execute CSharp Script Code (preview), and Execute PowerShell Code (preview). Эти действия можно использовать для написания небольших фрагментов кода, которые поддерживают динамические входные и выходные данные содержимого. Подсистема Azure Logic Apps ожидает, что эти фрагменты кода будут иметь короткое время выполнения. После завершения выполнения фрагмента кода выходные данные доступны для использования подчиненными действиями в рабочем процессе. Хотя в настоящее время для этого действия не существует прямой поддержки отладки, можно просмотреть входные и выходные данные в журнале выполнения экземпляра рабочего процесса.
Как упоминалось в разделе "Повторно используемые компоненты ", поддержка вызова сборок .NET Fx из карты XSLT в настоящее время доступна в рабочих процессах приложения логики потребления при отправке этих сборок в учетную запись интеграции. Эта возможность помогает поддерживать пользовательские правила преобразования данных. Для рабочих процессов приложения логики уровня "Стандартный" команда Azure Logic Apps недавно выпустила поддержку вызова кода .NET Fx из карт XSLT, не требуя учетной записи интеграции. Вы также можете добавить сборки и карты в проект приложения логики "Стандартный" в Visual Studio Code и впоследствии развернуть в Azure. Дополнительные сведения см. в разделе платформа .NET Framework поддержка сборок, добавленных в преобразования XSLT Azure Logic Apps (цен. категория "Стандартный") и раздел "Схема дорог".
Вы также можете расширить рабочие процессы, включая приложения API Azure или веб-приложения, созданные с помощью службы приложение Azure. Если у вас есть требование размещать веб-приложения, REST API и мобильные серверные серверы, служба приложение Azure — это решение на основе HTTP. Приложения, размещенные в службе приложение Azure, можно интегрировать с локальными или облачными службами. Эта платформа поддерживает среды под управлением Windows и Linux для запуска и масштабирования приложений вместе с различными языками и платформами, такими как ASP.NET Core, Java, Ruby, Node.js, PHP и Python.
Группы приложений
В следующих разделах описаны варианты организации рабочих нагрузок в BizTalk Server и Azure Logic Apps.
BizTalk Server
Часть жизненного цикла разработки программного обеспечения включает создание кода и артефакты в логических пакетах и управление ими. BizTalk Server поддерживает концепцию приложения, которое можно развернуть в приложении BizTalk решение Visual Studio. Таким образом, если у вас есть сценарии, в которых требуется предоставить общий доступ к ресурсам, вы можете ссылаться на другие приложения.
BizTalk Server использует явную модель общего доступа, в которой можно добавлять ссылки на скомпилированные сборки. Если эти сборки находятся в глобальном кэше сборок (GAC), среда выполнения BizTalk находит и загружает сборки по мере необходимости. Одним из недостатков является то, что при необходимости обновлять общие сборки, если вы не реализуете схему управления версиями, необходимо удалить все проекты BizTalk, ссылающиеся на сборки перед обновлением. Это ограничение может привести к длительным временным шкалам развертывания и сложности при управлении несколькими установками и удалением.
Приложения логики Azure
В Azure Logic Apps ресурс приложения логики потребления включает только один рабочий процесс с отслеживанием состояния, что означает, что ресурс рабочего процесса и приложения логики, который является вашим приложением, всегда имеет связь "1–1". При использовании ресурса приложения логики "Стандартный" концепция приложения развивалась. Хотя ресурс приложения логики уровня "Стандартный" по-прежнему является вашим приложением, вы можете включить и запустить несколько рабочих процессов с этим ресурсом, что приведет к 1-многим отношениям. Если вы работаете локально в проекте приложения логики "Стандартный" в Visual Studio Code, ресурс приложения логики сопоставляется с этим одним проектом. Благодаря этому подходу можно легко и логически группировать связанные рабочие нагрузки, код и артефакты в одном проекте и развертывать этот проект в виде одного урока.
Облачные архитектуры работают не так, как парадигмы на основе сервера, такие как BizTalk. Azure Logic Apps (стандартный) использует модель извлечения для привлечения кода и артефактов. Таким образом, в результате вы скопируете все необходимые артефакты в проект, а затем развернете их с помощью кода и других артефактов. В некоторых случаях может потребоваться избежать необходимости копировать весь необходимый код и артефакты. Если это так, вы можете рассмотреть возможность превратить эту функцию в службу, которая может управлять отдельно, но может вызываться из рабочего процесса.
Например, предположим, что у вас есть преобразование данных, широко используемое вашей организацией. Вместо включения карты для преобразования в нескольких проектах приложения логики можно реализовать интерфейс, который предоставляет преобразование как услуга. Затем вы можете управлять жизненным циклом для этой службы отдельно от проектов приложения логики и вызывать эту службу из рабочих процессов.
С возможностью включения нескольких рабочих процессов в проект приложения логики уровня "Стандартный", можно спросить, как упорядочить эти рабочие процессы в проекте или в нескольких проектах? Ответ обычно зависит от ваших требований, например:
- Сходство бизнес-процессов
- Завершение мониторинга и поддержки
- Безопасность, управление доступом на основе ролей и сетевая изоляция
- Критически важные показатели производительности и бизнеса
- Геолокация и геоизбыточность
Дополнительные сведения см. в статье "Организация рабочих процессов приложения логики" в Azure Logic Apps (стандартный).
Безопасность и управление
Безопасность и управление, естественно, важны при создании интегрированных решений. По определению ПО промежуточного слоя находится между двумя или более системами. Для подключения и доступа к этим системам при установке подключения часто требуется передать учетные данные или секреты, поэтому для управления этой конфиденциальной информацией требуется учитывать.
BizTalk Server
BizTalk включает единый вход Enterprise ( единый вход), который позволяет хранить, сопоставлять и передавать зашифрованные учетные данные, используемые адаптерами. Эти зашифрованные сведения хранятся в базе данных единого входа. Вы также можете настроить партнерские приложения единого входа, которые представляют собой систему или бизнес-систему, которую требуется подключить.
Приложения логики Azure
Azure Logic Apps поддерживает следующие возможности безопасности:
Azure Key Vault
Учетные данные, секреты, ключи API и сертификаты можно хранить с помощью Azure Key Vault. В Azure Logic Apps эти сведения можно получить с помощью соединителя Azure Key Vault и исключить эти сведения из журналов платформы и журнала выполнения с помощью безопасных входных и выходных данных.
Далее в разделе "Отслеживание" в этом руководстве описывается функция журнала выполнения, которая предоставляет пошаговый воспроизведение выполнения рабочего процесса. Несмотря на то, что Azure Logic Apps предлагает ценность записи всех входных и выходных данных в выполнении рабочего процесса, иногда необходимо более детально управлять доступом к конфиденциальным данным. Эту информацию можно настроить с помощью безопасных входных и выходных данных для триггеров и действий, чтобы скрыть такое содержимое от журнала выполнения и предотвратить отправку этих данных в Azure Monitor, в частности Log Analytics и Application Insights. На следующем рисунке показан пример включения безопасных входных данных и безопасных выходных данных в журнале выполнения.
Интеграция на основе OAuth
Большинство соединителей используют этот тип проверки подлинности при создании подключений. Такой подход упрощает интеграцию со многими службами SaaS, так как предоставляет адрес электронной почты и пароль. Azure Управление API также поддерживает OAuth, поэтому обе службы можно использовать вместе, предоставляя единую схему проверки подлинности.
Эта возможность недоступна в собственном коде в BizTalk Server.
Управляемые удостоверения
Azure Logic Apps (цен. категория "Стандартный") может проходить проверку подлинности в учетных записях хранения с помощью управляемого удостоверения. Кроме того, некоторые соединители поддерживают использование управляемых удостоверений для проверки подлинности доступа к ресурсам, защищенным идентификатором Microsoft Entra. При использовании управляемого удостоверения для проверки подлинности подключения вам не нужно предоставлять учетные данные, секреты или токены Microsoft Entra.
Управление приложениями и управление доступом
В следующем разделе описаны параметры управления приложениями и доступом в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
Администраторы используют консоль администрирования BizTalk Server для управления приложениями BizTalk Server. Это средство является толстым клиентским приложением консоли управления (MMC), которое администраторы могут использовать для развертывания приложений, просмотра предыдущих, активных и очередных транзакций, а также выполнения подробных действий по устранению неполадок, таких как просмотр трассировок и повторная отправка транзакций.
Приложения логики Azure
Портал Azure — это общее средство, которое администраторы и сотрудники службы поддержки используют для просмотра и мониторинга работоспособности интерфейсов. Для Azure Logic Apps этот интерфейс включает в себя широкие трассировки транзакций, доступные в журнале выполнения.
Детализированные элементы управления доступом на основе ролей (RBAC) также доступны, чтобы управлять и ограничивать доступ к ресурсам Azure на различных уровнях.
Хранилище
В следующем разделе описаны параметры хранения данных в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
BizTalk Server сильно зависит от SQL Server для хранения данных и сохраняемости данных. Все остальные компоненты и узлы в BizTalk Server имеют определенные роли при интеграции разрозненных бизнес-приложений, таких как получение, обработка или маршрутизация сообщений. Однако компьютер базы данных записывает и сохраняет эту работу на диске. Например, когда BizTalk Server получает входящее сообщение, узел получения сохраняет это сообщение в базе данных MessageBox, прежде чем другие узлы получают сообщение для обработки оркестрации и отправки.
Так как вы отвечаете за подготовку баз данных SQL и управление ими, высокий уровень доступности является важным архитектурным компонентом, обеспечивающим время простоя. Чтобы обеспечить высокий уровень доступности для баз данных BizTalk Server, клиенты часто используют кластер Windows для создания кластера серверов с двумя или несколькими компьютерами под управлением SQL Server. Этот кластер серверов обеспечивает избыточность и отказоустойчивость для баз данных BizTalk Server. В отличие от балансировки нагрузки кластеризации, в которой группа компьютеров работает вместе для повышения доступности и масштабируемости, кластеризация серверов обычно включает пару компьютеров базы данных в активно-пассивной конфигурации, чтобы один компьютер предоставил ресурсы резервного копирования для другого.
Приложения логики Azure
Azure Logic Apps использует службу хранилища Azure для хранения и автоматического шифрования неактивных данных. Шифрование защищает данные и помогает соблюдать корпоративные обязательства по обеспечению безопасности и соответствию требованиям. По умолчанию служба хранилища Azure использует для шифрования данных ключи, управляемые корпорацией Майкрософт. Дополнительные сведения см. в статье Шифрование службы хранилища Azure для неактивных данных.
При работе с служба хранилища Azure через портал Azure все транзакции выполняются по протоколу HTTPS. Вы также можете работать с служба хранилища Azure с помощью REST API хранилища по протоколу HTTPS. Чтобы применить протокол HTTPS при вызове REST API для доступа к объектам в учетных записях хранения, включите безопасную передачу, необходимую для учетной записи хранения.
Конфигурация данных
Разделение между конфигурацией и кодом становится важным, если требуется переместить решения интеграции между средами без необходимости повторно компилировать или повторно компилировать код. Сведения о конфигурации обычно зависят от среды, поэтому можно определить конечные точки и другие сведения, которые необходимо изменить при развертывании решений в ландшафте.
BizTalk Server
Исполняемый файл службы BizTalk NT
Этот исполняемый файл вызывает файл app.config с именем BTSNTSvc.exe.config. Этот файл предоставляет пары "ключ-значение", чтобы хранить сведения о конфигурации чистого текста. Однако обратите внимание на этот файл на основе следующих соображений:
Тщательно реплицируйте конфигурацию на всех компьютерах в группе BizTalk.
Изменения конфигурации требуют перезапуска экземпляров узла для получения последних значений в этом файле конфигурации.
Любые синтаксические ошибки, введенные в этот файл конфигурации, препятствуют запуску экземпляров узлов и их простою.
Средство единого входа enterprise
Это средство также можно использовать в качестве хранилища конфигурации. Средства сообщества также доступны для включения управления данными с помощью корпоративного единого входа. Впоследствии эти данные можно получить с помощью средств SDK, чтобы получить эти данные во время выполнения.
Пользовательские компоненты кэша
Эти компоненты часто представлены, чтобы можно было решать варианты использования за пределами пар "ключ-значение". Например, предположим, что вы хотите хранить табличные данные в базе данных SQL Server и загружать эти данные в память при запуске экземпляра узла. Эта реализация позволяет BizTalk Server получать эти сведения во время выполнения, выполнив пользовательский код .NET Fx. Затем эти данные можно получить из оркестрации, карт BizTalk и пользовательских компонентов конвейера.
Настраиваемая база данных
Базы данных являются хорошо известной технологией и языком как для разработчиков, так и для администраторов, поэтому пользовательская база данных является еще одним распространенным вариантом хранения данных конфигурации приложения.
Подсистема бизнес-правил (BRE)
В то время как не основной вариант использования, BRE также может выступать в качестве хранилища конфигурации. Независимо от того, вызывается ли подсистема из компонента оркестрации или конвейера, можно определить сведения, относящиеся к среде, в политиках BRE, а затем развернуть соответствующую политику в соответствующей среде. Во время выполнения компонент оркестрации или конвейера может получить доступ и использовать эти сведения в подчиненных функциях, таких как карты или в ситуациях маршрутизации.
Пользовательский файл конфигурации
Файлы настраиваемой конфигурации (config) можно использовать для хранения данных конфигурации приложения, но этот подход не является общим, так как, скорее всего, вам придется поддерживать статическое и фиксированное расположение для этих файлов во всех средах.
Реестр Windows
Реестр Windows можно использовать в качестве допустимого варианта для хранения значений конфигурации приложения. Этот реестр является централизованной иерархической базой данных, используемой операционными системами Microsoft Windows для хранения сведений, необходимых для настройки системы для одного или нескольких пользователей, приложений и аппаратных устройств. Реестр содержит следующие основные элементы: hives, ключи и значения. Однако сохранение значений, хранящихся в реестре, может оказаться трудным в больших средах с несколькими реестрами и сложностью резервного копирования отдельных параметров приложения.
Приложения логики Azure
Azure Key Vault
Эта служба хранит и защищает криптографические ключи и другие секреты, используемые приложениями и облачными службами. Так как управление безопасными ключами важно для защиты данных в облаке, используйте Azure Key Vault для шифрования и хранения ключей и секретов, таких как пароли.
Настройка приложения Azure
Эта служба централизованно управляет параметрами приложения и флагами компонентов. Конфигурации для всех приложений Azure можно хранить в универсальном расположении. Эффективное и надежное управление конфигурациями в режиме реального времени и без влияния на клиентов, избегая много времени повторного развертывания. Конфигурация приложений Azure строится для обеспечения скорости, масштабируемости и безопасности.
Azure Cosmos DB
Эта служба является полностью управляемой базой данных NoSQL для современной разработки приложений с однозначным миллисекундным временем отклика, а также автоматической и мгновенной масштабируемостью, которая гарантирует скорость в любом масштабе. Вы можете загрузить данные конфигурации в Azure Cosmos DB, а затем получить доступ к этим данным с помощью соединителя Azure Cosmos DB в Azure Logic Apps.
Хранилище таблиц Azure
Эта служба предоставляет другое хранилище для хранения данных конфигурации с низкой стоимостью. Эти данные можно легко получить с помощью соединителя хранилища таблиц Azure в Azure Logic Apps. Дополнительные сведения см. в разделе "Хранилище таблиц Azure".
Настраиваемое кэширование
Вы также можете реализовать пользовательские решения кэширования с помощью Служб Azure Integration Services. Популярные подходы включают использование политик кэширования в Azure Управление API и Кэш Azure для Redis.
Настраиваемая база данных
Базы данных являются хорошо известной технологией и языком как для разработчиков, так и для администраторов, поэтому пользовательская база данных является еще одним распространенным вариантом хранения данных конфигурации приложения.
Обработка больших файлов
В следующем разделе описаны параметры обработки больших файлов в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
Чтобы устранить обработку больших файлов, BizTalk Server включает оптимизации на основе следующих профилей:
Только маршрутизация сообщений
Если вы используете BizTalk Server только для маршрутизации сообщений на основе свойств сообщения с повышенными уровнями, сообщения передаются в базу данных MessageBox с помощью интерфейса .NET XmlReader. BizTalk Server не загружает отдельные части сообщений в память, поэтому в этом сценарии ошибки из памяти не являются проблемой. Однако основное внимание относится к объему времени, необходимого для записи очень больших сообщений (более 100 МБ) в базу данных MessageBox. Команда разработки BizTalk Server успешно тестирует обработку сообщений до 1 ГБ только при выполнении маршрутизации. Дополнительные сведения см. в разделе "Оптимизация производительности конвейера".
Преобразования данных с картами
Когда BizTalk Server преобразует документ с помощью карты, эта потенциально трудоемкая операция передает сообщение классу .NET XslCompiledTransform, который загружает таблицу стилей XSL. После успешного завершения операции загрузки несколько потоков могут одновременно вызывать метод преобразования. Дополнительные сведения см. в классе XslCompiledTransform.
BizTalk Server значительно улучшает управление памятью для больших документов, реализуя пороговое значение настраиваемого размера сообщения для загрузки документов в память во время преобразований. По умолчанию пороговое значение размера сообщения составляет 1 МБ. Для любого сообщения с размером ниже этого порогового значения BizTalk Server обрабатывает сообщение в памяти. Чтобы уменьшить требования к памяти для любого сообщения с размером выше этого порогового значения, BizTalk Server буферизирует сообщение в файловую систему.
Приложения логики Azure
Некоторые основные различия между обработкой больших файлов с помощью локальной платформы промежуточного слоя, например BizTalk Server, и предложения PaaS, например Azure Logic Apps. Например, тщательно изучите сценарии больших сообщений, чтобы найти правильное решение, так как потенциально разные способы решения этой проблемы в современной облачной среде существуют.
Ограничения размера файла
В Azure ограничения размера файлов существуют для обеспечения согласованного и надежного взаимодействия. Чтобы проверить сценарий, ознакомьтесь с документацией по ограничениям службы для Azure Logic Apps. Некоторые соединители поддерживают фрагментирование сообщений для сообщений, превышающих ограничение размера сообщения по умолчанию, которое зависит от соединителя. Блокирование сообщений работает путем разделения большого сообщения на небольшие сообщения.
Azure Logic Apps — это не единственная служба, которая имеет ограничения размера сообщения. Например, Служебная шина Azure также имеет такие ограничения. Дополнительные сведения об обработке больших сообщений в Служебная шина Azure см. в разделе поддержки больших сообщений.
Шаблон проверки утверждений
Чтобы избежать ограничений размера файла, можно реализовать шаблон проверки утверждений, который работает путем разделения большого сообщения на проверку утверждений и полезные данные. Вы отправляете проверку утверждения на платформу обмена сообщениями и храните полезные данные во внешней службе. Таким образом, можно обрабатывать большие сообщения, защищая шину сообщений и клиента от перегрузки. Этот шаблон также помогает сократить затраты, так как хранилище обычно дешевле, чем единицы ресурсов, используемые платформой обмена сообщениями.
Azure Data Factory
Фабрика данных Azure предоставляет другой вариант обработки больших файлов. Эта служба — это предложение Azure ELT для масштабируемой интеграции бессерверных данных и преобразования данных с помощью визуального интерфейса без кода для интуитивно понятного разработки и одноуровневого мониторинга и управления ими. Вы также можете поднять и переместить существующие пакеты СЛУЖБ SQL Server Integration Services (SSIS) в Azure и запустить их с полной совместимостью в Фабрика данных Azure. Среда выполнения интеграции SSIS предлагает полностью управляемую службу, поэтому вам не нужно беспокоиться об управлении инфраструктурой. Дополнительные сведения см. в статье "Лифт и смена рабочих нагрузок СЛУЖБ SQL Server Integration Services" в облако.
В локальных архитектурах служба SSIS была популярным вариантом управления загрузкой больших файлов в базы данных. В качестве облачного эквивалента для этой архитектуры Фабрика данных Azure может решать преобразование и перемещение больших наборов данных в различных источниках данных, таких как файловые системы, базы данных, SAP, Хранилище BLOB-объектов Azure, Azure Data Explorer, Oracle, DB2, Amazon RDS и многое другое. При наличии больших требований к обработке данных рекомендуется использовать Фабрика данных Azure в качестве лучшего варианта по сравнению с Azure Logic Apps и Служебная шина Azure.
Мониторинг и оповещения
BizTalk Server
BizTalk монитор работоспособности
Это средство — это оснастка MMC, которую можно использовать для мониторинга работоспособности сред BizTalk Server и выполнения задач обслуживания. Функции включают отчеты MsgBox Viewer (MBV), задачи средства терминатора, Уведомления по электронной почте, коллекцию отчетов и интеграцию с perfmon.
Консоль администрирования BizTalk
Это средство также является оснасткой MMC для администраторов для обнаружения сбоев, приостановленных экземпляров, транзакций, которые в настоящее время извлекается, состояние и многое другое. Интерфейс средства очень реактивен, так как необходимо постоянно обновлять консоль, чтобы просмотреть последние сведения.
-
Внешнее веб-решение, которое обеспечивает общий контроль над средой BizTalk Server. Это одно средство предлагает возможности операций, мониторинга и аналитики для BizTalk Server.
Приложения логики Azure
В Azure Logic Apps доступны следующие параметры:
Для рабочих процессов приложения логики потребления можно установить решение управления Logic Apps (предварительная версия) в портал Azure и настроить журналы Azure Monitor для сбора диагностических данных. После настройки приложения логики для отправки данных в рабочую область Azure Log Analytics данные телеметрии передаются в место, где решение Logic Apps Management может предоставлять визуализации работоспособности. Дополнительные сведения см. в статье Настройка журналов Azure Monitor и сбор диагностических данных для Azure Logic Apps. С поддержкой диагностика можно также использовать Azure Monitor для отправки оповещений на основе различных типов сигналов, таких как при сбое триггера или запуска. Дополнительные сведения см. в статье "Мониторинг состояния выполнения", "Просмотр журнала триггеров" и настройка оповещений для Azure Logic Apps.
Для рабочих процессов приложения логики уровня "Стандартный" можно включить поддержку Application Insights, которая предоставляет курированные визуализации в качестве основы для мониторинга служб Azure. Эти визуализации помогают более эффективно отслеживать стандартные рабочие процессы с помощью панелей мониторинга, специально разработанных для Azure Logic Apps (стандартный). Область панели мониторинга охватывает рабочие процессы внутри стандартного приложения логики. Панель мониторинга основана на книгах Azure и предлагает различные визуализации. Эти книги можно легко расширить и настроить в соответствии с конкретными потребностями.
Бессерверные 360 — это внешнее решение из Kovai, которое обеспечивает мониторинг и управление путем сопоставления служб Azure, таких как Azure Logic Apps, Служебная шина Azure, Azure Управление API и Функции Azure. Вы можете повторно обработать сообщения с помощью очередей недоставленных писем в Служебная шина Azure, включить самовосстановление для решения периодических сбоев службы и настроить упреждающий мониторинг с помощью искусственных транзакций.
Вы можете настроить пользовательские правила мониторинга и просмотреть журналы на портале. Вы можете отправлять уведомления через различные каналы, такие как электронная почта, Microsoft Teams и ServiceNow. Чтобы визуально определить работоспособность интерфейсов, доступны карты служб.
Мониторинг бизнес-активности
В следующем разделе описаны параметры мониторинга и сбора данных телеметрии для рабочих нагрузок в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
BizTalk Server включает функцию мониторинга бизнес-активности (BAM), которая позволяет разработчикам и бизнес-аналитикам определять профили отслеживания, которые они могут применять к оркестрации. По мере перемещения сообщений через порты получения и отправки атрибуты данных записываются и хранятся в базе данных BAM. Пользовательская реализация также доступна через API Fx .NET.
Приложения логики Azure
В качестве разработчика или бизнес-аналитика, работающего над решениями, которые интегрируют службы и системы с помощью различных ресурсов Azure, могут возникнуть трудности с визуализацией связи между техническими компонентами в решении и бизнес-сценарии. Чтобы включить бизнес-контекст о ресурсах Azure в решение, можно создать бизнес-процессы, которые визуально представляют бизнес-логику, реализованную этими ресурсами. В службе "Отслеживание бизнес-процессов Azure" бизнес-процесс представляет собой ряд этапов, представляющих задачи, которые проходят через реальный бизнес-сценарий.
Другой вариант заключается в том, что вы можете использовать внешнее решение из Kovai под названием Serverless 360. Наряду с платформой мониторинга можно использовать функцию мониторинга бизнес-активности, которая обеспечивает комплексное отслеживание потоков бизнес-процессов в облачных и гибридных интеграции. Эта функция включает в себя управляемый соединитель, который разработчики могут использовать для инструментирования кода и сбора важных бизнес-данных. Администраторы впоследствии могут создавать панели мониторинга и предоставлять им общий доступ к бизнес-аналитикам.
Отслеживание
В следующем разделе описаны параметры отслеживания артефактов для мониторинга производительности и анализа работоспособности в BizTalk Server и Службах Azure Integration Services.
BizTalk Server
Отслеживание сообщений
Администраторы BizTalk Server могут использовать отслеживание текста сообщения, чтобы указать, когда сохранять тела сообщений в хранилище для устранения неполадок и аудита. Отслеживание сообщений является дорогостоящей операцией как с точки зрения производительности, так и с точки зрения хранения, поэтому используйте эту возможность выборочно, чтобы избежать проблем с производительностью. При включении отслеживания текста сообщения на портах получения и отправки BizTalk Server копирует данные в базу данных отслеживания BizTalk (BizTalkDTADb) с помощью задания агент SQL Server с именем TrackedMessages_Copy_<message-box-name>.
Отслеживание можно применять практически ко всем артефактам BizTalk Server, включая оркестрации, конвейеры, получение портов, отправку портов, схем и бизнес-правил. Эти параметры включены или отключены во время выполнения, не затрагивая код (решение) или требуя перезапуска.
Отслеживание работоспособности и активности (HAT)
Хотя средство HAT было удалено из BizTalk Server начиная с выпуска 2009 года, функции по-прежнему существуют в консоли администрирования BizTalk. Администраторы могут искать данные с помощью нового интерфейса запроса в интерфейсе "Обзор группы". Вы можете настроить запросы на основе различных критериев, включая тип события, имя порта, URI, имя схемы и многое другое. Если вы хотите просмотреть тела сообщений, перемещаемые через порт получения или отправки, вы можете получить доступ к этой информации, предоставленной для отслеживания уровня портов. Дополнительные сведения см. в разделе "Работоспособное состояние" и "Отслеживание действий".
Интеграция с Application Insights и Центры событий Azure
В BizTalk Server 2016 с пакетом дополнительных компонентов 1 можно опубликовать данные телеметрии в Application Insights в Azure Monitor или Центры событий Azure. Этот подход позволяет избежать проблем с емкостью дисков SQL Server, чтобы вместо этого можно было использовать эластичные облачные хранилища данных, такие как Application Insights, Log Analytics и журнал выполнения в Azure Logic Apps.
Приложения логики Azure
Azure Logic Apps также предоставляет широкий журнал выполнения, чтобы разработчики и аналитики могли просматривать действия по телеметрии действий, включая все обработанные входные и выходные данные. Чтобы защитить конфиденциальные данные, можно включить безопасные входные и выходные данные для отдельных действий в рабочих процессах. Эта возможность скрывает или скрывает данные в журналах и журналах выполнения рабочих процессов, чтобы избежать утечки.
Помимо скрытия данных, можно использовать правила Azure RBAC для защиты доступа к данным. Azure RBAC включает определенные встроенные роли для Azure Logic Apps (стандартный).
Помимо Azure RBAC, вы также можете ограничить доступ к журналу выполнения в Azure Logic Apps по диапазону IP-адресов.
Размещение на компьютере
В следующем разделе описаны варианты размещения для BizTalk Server и Служб Azure Integration Services.
BizTalk Server
BizTalk Server 2020 поддерживает следующие платформы и продукты Майкрософт, начиная с накопительного обновления 6:
- Windows Server 2022, Windows Server 2019 и Windows 11
- Visual Studio 2019 Корпоративная и Visual Studio 2019 Профессиональный
- SQL Server 2022, SQL Server 2019
- Office 2019 и Office 2016
Вы можете установить и запустить BizTalk Server на своем оборудовании, локальной виртуальной машине или виртуальных машинах Azure. Виртуальные машины Azure обеспечивают гибкость виртуализации для широкого спектра вычислительных решений с поддержкой BizTalk Server, Windows Server, SQL Server и т. д. Все виртуальные машины текущего поколения включают балансировку нагрузки и автоматическое масштабирование без затрат.
Приложения логики Azure
Планы размещения
В azure Logic Apps с одним клиентом приложение логики "Стандартный" похоже на функцию Azure или веб-приложение, в котором можно использовать один план службы рабочих процессов для размещения нескольких приложений логики "Стандартный". Это означает, что вам не нужно развертывать все рабочие процессы в одном ресурсе приложения логики "Стандартный". Вместо этого можно упорядочить эти рабочие процессы в логические группы (приложения логики), чтобы лучше управлять другими аспектами решения. Этот подход поможет вам получить большую часть плана службы рабочих процессов и будущего подтверждения приложений, которые можно реализовать таким образом, чтобы они могли масштабироваться по отдельности.
Приложение логики уровня "Стандартный" имеет следующие ценовые категории: WS1, WS2 и WS3. Функционально каждый уровень предоставляет одинаковые возможности. Ваши требования к вычислительным ресурсам и памяти лучше всего подходит для вашего сценария, например:
Ценовая категория Виртуальный ЦП Память (ГБ) WS1 1 3.5 WS2 2 7 WS3 4 14 Дополнительные сведения см. в разделе "Ценовые категории" в модели "Стандартный".
Модель гибридного развертывания (предварительная версия)
Azure Logic Apps предлагает модель гибридного развертывания, чтобы можно было развертывать и размещать рабочие процессы приложения логики уровня "Стандартный" в локальных, частных облаках или в общедоступных облачных сценариях. Эта модель предоставляет возможности размещения решений интеграции в частично подключенных средах, когда необходимо использовать локальную обработку, хранилище данных и сетевой доступ. С помощью гибридного варианта у вас есть свобода и гибкость, чтобы выбрать оптимальную среду для рабочих процессов. Дополнительные сведения см. в статье "Настройка собственной инфраструктуры для приложений логики "Стандартный" с помощью гибридного развертывания (предварительная версия).
Доступность и избыточность
В Azure зоны доступности обеспечивают устойчивость, распределенную доступность и масштабируемость зоны active-active. Чтобы повысить доступность рабочих нагрузок приложения логики, можно включить поддержку зоны доступности, но только при создании приложения логики. Вам потребуется не менее трех отдельных зон доступности в любом регионе Azure, который поддерживает и обеспечивает избыточность зоны. Платформа Azure Logic Apps распределяет эти зоны и рабочие нагрузки приложений логики между этими зонами. Эта возможность является ключевым требованием для использования устойчивых архитектур и обеспечения высокой доступности в случае сбоя центра обработки данных в регионе. Дополнительные сведения см. в статье "Создание решений для обеспечения высокой доступности с помощью зон доступности".
Изолированная и выделенная среда
Для приложений логики уровня "Стандартный" можно выбрать Среда службы приложений (ASE) версии 3 для среды развертывания. С помощью ASE версии 3 вы получаете полностью изолированную и выделенную среду для запуска приложений в большом масштабе с прогнозируемыми ценами. Вы платите только за план ASE Служба приложений независимо от количества приложений логики, которые вы создаете и запускаете.
Сценарии, требующие дополнительных служб интеграции Azure, см. в следующей документации:
- Служебная шина Azure уровнях обмена сообщениями уровня "Премиум" и "Стандартный"
- Azure Управление API — сравнение уровней на основе компонентов
- Фабрика данных Azure. Планирование управления затратами и понимание цен на фабрику данных с помощью примеров
Развертывание
BizTalk Server
Собственная упаковка развертывания в BizTalk Server основана на файле установщика Майкрософт (MSI) в сочетании с конфигурацией среды или привязками, файлом. Эти два файла создают разделение между установкой компонентов, которые развертываются в следующих репозиториях BizTalk Server и определяют параметры на уровне порта и конвейера, включая конечную точку, секреты, конфигурацию конвейера и другие.
- База данных управления
- Локальные папки BizTalk Server
- Глобальный кэш сборок .NET
Хотя этот процесс может оказаться эффективным, необходимо также управлять каждой отдельной конфигурацией среды отдельно от кода. Проект с открытым кодом BizTalk Deployment Framework (BTDF) предлагает одно решение для этой проблемы. С помощью этого средства можно поддерживать конфигурацию среды в рамках решения BizTalk Server с помощью файла привязки с маркерами, который создается во время разработки, и матрицу маркеров, созданную в виде файла Excel для каждой среды.
Затем процесс сборки создает унифицированный и версияемый MSI-файл. Этот файл поддерживает развертывание компонентов и конфигурацию среды из одного пакета, что позволяет лучше контролировать версию решения, которое необходимо реализовать в разных средах.
Поддержка пакета BTDF в конвейере непрерывного развертывания с непрерывной интеграцией (CI/CD) доступна в BizTalk Server 2020, которая включает эту функцию, представленную в пакетах дополнительных компонентов BizTalk Server 2016. Эту функцию и платформу Azure DevOps можно использовать для упрощения автоматического развертывания решений BizTalk Server в разных средах.
Приложения логики Azure
При развертывании ресурса Azure Logic Apps или любого другого компонента или решения Служб Azure Integration Services в Azure необходимо управлять следующими элементами:
Ресурсы Azure, действующие в качестве контейнеров или инфраструктуры для решений, которые требуется развернуть, например ресурс приложения логики "Стандартный", экземпляр Управление API, пространство имен служебная шина или раздел "Сетка событий"
Фактическая логика, реализованная каждым компонентом, такими как рабочие процессы, API, очереди и подписки
Конфигурация, связанная с каждым компонентом, например разрешения, секреты, оповещения и т. д.
При сохранении определения инфраструктуры отдельно от кода можно рассматривать определение инфраструктуры как только другой фрагмент кода, который можно использовать, безопасно хранить в репозитории системы управления версиями и запускать развертывание при изменении определения. Эта практика, известная как инфраструктура как код (IaC), улучшает качество среды, так как вы можете создавать версии для каждой среды и отслеживать изменения обратно в управление версиями.
Azure Logic Apps поддерживает IaC, предоставляя возможность создавать ресурсы инфраструктуры с помощью шаблонов управления ресурсами Azure. Хотя шаблоны ARM могут показаться сложными для понимания и реализации в качестве единого решения, можно использовать средства абстракции, такие как Bicep, Terraform или Pulumi, которые обеспечивают код, подобный созданию определения инфраструктуры. Хотя эти средства предоставляют уровни абстракции по шаблонам ARM, средства в конечном итоге создают шаблоны ARM и могут развертывать эти шаблоны.
Используя инфраструктуру, вы можете развернуть логику, реализующую комплексные рабочие процессы. Так как Службы Azure Integration Services предлагают набор средств для реализации рабочих процессов интеграции, необходимо развернуть каждый компонент. Для решений, созданных с помощью служб Azure Integration Services, конвейеры CI/CD обычно основаны на развертывании оркестрации компонентов. Инженеры DevOps могут использовать встроенные действия, которые абстрагируют действия развертывания, или используют универсальные действия, которые выполняют команды CLI или скрипты автоматизации, такие как PowerShell и Bash. В большинстве случаев инженеры настраивают конвейеры на основе потребностей приложения, просматривают рекомендации из официальной документации и используют примеры репозиториев в качестве отправной точки.
Процесс подготовки каждого компонента к развертыванию обычно выполняет следующие действия.
Этап непрерывной интеграции
Получите последнюю версию исходного кода.
Подготовьте код с конфигурацией для конкретной среды.
Сведения об этом шаге зависят от поддержки каждой технологии для внешней внедрения переменных среды. Основная среда заключается в том, что сведения о конфигурации на основе среды, такие как строка подключения и ссылки на внешние ресурсы, абстрагируются для ссылки на репозиторий параметров приложения. Таким образом, в этом сценарии вы будете хранить ссылки, которые могут существовать как чистый текст непосредственно в репозитории параметров приложения, но вы будете хранить конфиденциальные значения, такие как секреты, как справочные указатели на записи в хранилище секретов, например хранилище ключей Azure.
Azure Logic Apps позволяет использовать этот подход для ресурса приложения логики уровня "Стандартный", поддерживая ссылки на репозиторий параметров приложения, который затем можно сопоставить пары "имя-значение" с записями в хранилище ключей.
Упаковав код для развертывания в различных средах.
Этап непрерывного развертывания
Разверните упакованный код в конечной среде.
Обновите репозиторий параметров приложения с правильными значениями среды в виде четкого текста или ссылок на записи в хранилище ключей.
Обновите все необходимые разрешения, зависящие от кода.
При необходимости подготовьте приложение к выполнению.
Сопоставление компонентов
В следующей таблице и схеме показано, как ресурсы, артефакты, функции и возможности сравнивают и сопоставляются между BizTalk Server, Azure Logic Apps и Службами Azure Integration Services. Хотя Azure Logic Apps является ключевой платформой для рабочих нагрузок интеграции, убедитесь, что вы считаете все доступные возможности в Azure Integration Services и в целом Azure.
Возможность | BizTalk Server | Azure |
---|---|---|
Взаимодействия | — оркестрация BizTalk Server — код C# |
— Рабочий процесс Azure Logic Apps — Шаблоны рабочих процессов Azure Logic Apps — приложение-функция Функции Azure |
Pipelines | — Конвейеры BizTalk Server — компоненты конвейера |
— Рабочие процессы Azure Logic Apps (как конвейеры) — Azure Управление API (как конвейеры) — приложение-функция Функции Azure — приложение API Azure |
Маршрутизация сообщений | — MessageBox — Повышение свойств -Фильтры |
— Служебная шина Azure очереди и разделы (заголовки сообщений, свойства сообщения и подписки) — Сетка событий Azure или Azure Управление API — SQL Server или Кэш Azure для Redis |
Подключение к приложению | — BizTalk Server вне коробки и пользовательские адаптеры — службы IIS (IIS) и Azure Управление API (гибридные возможности) |
— соединители Azure Logic Apps — Azure Управление API (как соединители) — приложение-функция Функции Azure — приложение API Azure |
Перекрестные ссылки | xref_ * таблицы в базе данных BizTalk Management (BizTalkMgmtDb) | - Функции Azure — SQL Server - Custom |
Схемы (XSD) | — Схемы BizTalk Server — схемы XML, JSON и неструктурированных файлов |
— Azure Logic Apps (стандартный) — учетная запись интеграции Azure — учетная запись хранения Azure — приложение-функция Функции Azure — приложение API Azure |
Карты | — BizTalk Mapper — карты XSLT — Azure Управление API (гибридные возможности) |
— Azure Logic Apps (стандартный) — карты XSLT, шаблоны Liquid — учетная запись интеграции Azure (карты XSLT, шаблоны Liquid) — учетная запись хранения Azure — приложение-функция Функции Azure — приложение API Azure — средство сопоставления данных (расширение Azure Logic Apps standard для Visual Studio Code) |
Бизнес-правила | Подсистема бизнес-правил BizTalk Server | Обработчик правил Azure Logic Apps |
Мониторинг бизнес-активности | Мониторинг бизнес-активности BizTalk Server | Отслеживание бизнес-процессов Azure |
EDI | — возможности bizTalk Server вне коробки - Стороны, партнеры, соглашения, AS2, X12, EDIFACT |
Учетная запись интеграции Azure Logic Apps и Azure (партнеры, соглашения, AS2, X12, EDIFACT) |
HL7, RosettaNet и SWIFT | Акселераторы BizTalk Server для HL7, RosettaNet и SWIFT | — Azure Logic Apps, учетная запись интеграции Azure, соединители RosettaNet и SWIFT — Azure Управление API для FHIR (HL7) — Схема Azure, которая обеспечивает соответствие SWIFT CSP в Azure |
Секреты | Единый вход предприятия | — Azure Key Vault — SQL Server — конфигурация приложения |
Безопасность и управление | — Единый вход предприятия — приложения филиала единого входа — Active Directory — подписывание сертификатов — проверка подлинности безопасности IIS — безопасность сети |
— Идентификатор Microsoft Entra — Безопасность сети Azure — Управление доступом на основе ролей Azure (Azure RBAC) — утверждения, маркеры — Политики общего доступа |
Конфигурация данных | — файлы конфигурации — Конфигурация приложения корпоративного единого входа — Пользовательские компоненты кэша — настраиваемая база данных — Подсистема бизнес-правил — Реестр Windows |
— Azure Key Vault - Конфигурация приложений Azure — Azure Cosmos DB — Хранилище таблиц Azure — Конфигурация Azure Logic Apps (стандартная) — конфигурация Функции Azure — именованные значения и серверные серверы Azure Управление API — SQL Server — настраиваемое кэширование — настраиваемая база данных |
Развертывание | — Файл привязки BizTalk Server | — Azure Pipelines — скрипты Bicep - Terraform |
Отслеживание | — Возможности отслеживания BizTalk Server (получение портов, отправки портов, конвейеров, оркестрации) — отслеживание IIS — Встроенная аналитика azure Управление API (гибридные возможности) |
— Журнал выполнения и отслеживаемые свойства в Azure Logic Apps — учетная запись служба хранилища Azure — Azure Monitor (Application Insights) — встроенная аналитика azure Управление API — Пользовательское решение, например, Центры событий Azure плюс Функции Azure плюс SQL Server плюс Azure Data Explorer |
Наблюдение | — консоль администрирования BizTalk — BizTalk монитор работоспособности |
Azure Monitor (Application Insights, Log Analytics) |
Операции | — консоль администрирования сервера BizTalk — Azure Pipelines — MSI, PowerShell — BizTalk Deployment Framework |
- портал Azure — Azure Monitor — Шаблоны Azure Resource Manager — Azure Pipelines — PowerShell, CLI, Bicep |
Чтобы оставаться в курсе последних инвестиций, подпишитесь на интеграции в блоге Azure — Tech Community.
Следующие шаги
Вы узнали больше о сравнении Azure Logic Apps с BizTalk Server. Далее вы узнаете, как выбрать лучшие возможности Azure для ваших сценариев. Кроме того, пройдите вперед, чтобы ознакомиться с предлагаемыми подходами и ресурсами, рекомендациями по планированию и рекомендациями по миграции.