Por que migrar do BizTalk Server para os Aplicativos Lógicos do Azure?
Este guia fornece uma visão geral sobre os motivos e benefícios, comparações de produtos, recursos e outras informações para ajudá-lo a começar a migrar do BizTalk Server local para os Aplicativos Lógicos do Azure. Seguindo este guia, você encontrará mais guias que abordam como escolher os serviços que melhor se ajustam ao seu cenário, juntamente com estratégias de migração, considerações de planejamento e práticas recomendadas para ajudá-lo a obter resultados bem-sucedidos.
Razões e benefícios
Ao migrar suas cargas de trabalho de integração para os Aplicativos Lógicos do Azure, você pode colher os seguintes benefícios principais:
Benefício | Description |
---|---|
Plataforma de integração moderna como serviço (iPaaS) | Os Aplicativos Lógicos do Azure fazem parte do Azure Integration Services, que fornece recursos que não existiam quando o BizTalk Server foi originalmente criado, por exemplo: - A capacidade de criar e gerenciar APIs REST - Infraestrutura de nuvem escalável - Esquemas de autenticação modernos, mais seguros e mais fáceis de implementar - Ferramentas de desenvolvimento simplificadas, incluindo muitas experiências baseadas em navegador web - Atualizações automáticas da plataforma e integração com outros serviços nativos da nuvem - Capacidade de executar no local (modelo de implantação híbrida do Azure Logic Apps) |
Investimentos em recursos do BizTalk | Os Aplicativos Lógicos do Azure, sucessores do BizTalk Server, incluem alguns recursos principais do BizTalk Server. Por exemplo, o Mecanismo de Regras de Aplicativos Lógicos do Azure usa o mesmo tempo de execução que o BRE (Mecanismo de Regras de Negócios) do BizTalk. Para ajudá-lo a preservar os investimentos dos clientes no BizTalk Server, o designer de fluxo de trabalho nos Aplicativos Lógicos do Azure inclui recursos adicionais, como a ferramenta Mapeador de Dados quando você usa o Visual Studio Code, suporte para execução de código personalizado e suporte a XML nativo. |
Preços baseados no consumo | Com as plataformas de middleware tradicionais, muitas vezes você deve fazer investimentos significativos de capital na aquisição de licenças e infraestrutura, forçando-o a "construir para o pico" e criando ineficiências. O Azure Integration Services fornece vários modelos de preços que geralmente permitem que você pague pelo que usar. Embora alguns modelos de preços habilitem e forneçam acesso a recursos mais avançados, você tem a flexibilidade de pagar pelo que consome. |
Menor barreira à entrada | O BizTalk Server é um agente de middleware muito capaz, mas requer tempo significativo para aprender e ganhar proficiência. As Aplicações Lógicas do Azure reduzem o tempo necessário para iniciar, aprender, criar e fornecer soluções. Por exemplo, os Aplicativos Lógicos do Azure incluem um designer visual que oferece uma experiência sem código ou low-code para criar os fluxos de trabalho declarativos que você deseja substituir as orquestrações do BizTalk. |
Conectividade SaaS | Com as APIs REST se tornando padrão para integração de aplicativos, mais empresas de SaaS adotaram essa abordagem para a troca de dados. A Microsoft construiu um ecossistema de conectores expansivo e em constante crescimento com centenas de APIs para trabalhar com serviços, sistemas e protocolos Microsoft e não Microsoft. Nos Aplicativos Lógicos do Azure, você pode usar o designer de fluxo de trabalho para selecionar operações desses conectores, criar e autenticar conexões facilmente e configurar as operações que eles desejam usar. Esse recurso acelera o desenvolvimento e fornece mais consistência ao autenticar o acesso a esses serviços usando OAuth2. |
Várias implantações geográficas | Atualmente, o Azure oferece 60+ regiões anunciadas, mais do que qualquer outro provedor de nuvem, para que você possa escolher facilmente os datacenters e as regiões certas para você e seus clientes. Esse alcance permite implantar soluções de maneira consistente em muitas regiões geográficas e oferece oportunidades de uma perspetiva de escalabilidade e redundância. |
O que é o Azure Logic Apps?
As Aplicações Lógicas do Azure são um serviço híbrido e baseado na nuvem para automatizar fluxos de trabalho e orquestrar processos empresariais, aplicações e dados em ambientes híbridos utilizando um designer visual. Este serviço faz parte do Azure Integration Services, que são um conjunto de blocos de construção baseados na nuvem, sem servidor, escaláveis e geridos pela Microsoft para criar soluções de integração abrangentes e migrar soluções existentes do BizTalk Server:
Serviço | Description |
---|---|
Azure Logic Apps | Crie e execute fluxos de trabalho automatizados de aplicativos lógicos que orquestram seus aplicativos, dados, serviços e sistemas. Você pode desenvolver rapidamente soluções de integração altamente escaláveis para sua empresa e cenários B2B (business-to-business). Use o designer de fluxo de trabalho visual para orquestrar microsserviços, APIs e integrações de linha de negócios. Para aumentar a escala e a portabilidade enquanto automatiza fluxos de trabalho críticos para os negócios, implante e execute em qualquer lugar que o Kubernetes possa executar. Você pode criar recursos do aplicativo lógico Consumo ou Padrão. Um aplicativo lógico de consumo inclui apenas um fluxo de trabalho com monitoração de estado que é executado em Aplicativos Lógicos do Azure multilocatário. Um aplicativo lógico padrão pode incluir vários fluxos de trabalho com ou sem monitoração de estado que são executados em Aplicativos Lógicos do Azure de locatário único, em um Ambiente do Serviço de Aplicativo v3 ou em clusters Kubernetes habilitados para Azure Arc (modelo de implantação híbrida). Para posicionar os Aplicativos Lógicos do Azure no Azure Integration Services, este guia se concentra em aplicativos lógicos padrão, que fornecem o melhor equilíbrio entre recursos corporativos, custo e agilidade. Para obter mais informações, consulte Aplicativos](logic-apps-overview.md). |
Funções do Azure | Escreva menos código, mantenha menos infraestrutura e economize em custos para executar aplicativos. Sem que você precise implantar e manter servidores, a infraestrutura de nuvem fornece todos os recursos atualizados necessários para manter seus aplicativos em execução. Para obter mais informações, consulte Azure Functions. |
Azure Data Factory | Integre visualmente todas as suas fontes de dados usando mais de 90 conectores integrados e isentos de manutenção sem custo adicional. Construa facilmente processos de Extrair, Transformar e Carregar (ETL) e Extrair, Carregar e Transformar (ELT) sem código em um ambiente intuitivo ou você pode escrever seu próprio código. Para desbloquear insights de negócios, forneça seus dados integrados ao Azure Synapse Analytics. Para obter mais informações, consulte Azure Data Factory. |
Azure Service Bus | Transfira dados entre aplicativos e serviços, mesmo quando offline, como mensagens usando este agente de mensagens empresariais altamente confiável. Obtenha mais flexibilidade ao intermediar mensagens entre cliente e servidor com mensagens estruturadas first-in, first-out (FIFO), recursos de publicação-assinatura e operações assíncronas. Para obter mais informações, consulte Barramento de Serviço do Azure. |
Grelha de Eventos do Azure | Integre aplicativos usando eventos fornecidos por um agente de eventos para destinos de assinante, como serviços do Azure, outros aplicativos ou qualquer ponto de extremidade onde a Grade de Eventos tenha acesso à rede. As fontes de eventos podem incluir outros aplicativos, serviços SaaS e serviços do Azure. Para obter mais informações, consulte Grade de eventos do Azure. |
API Management do Azure | Implante gateways de API lado a lado e otimize o fluxo de tráfego com APIs hospedadas no Azure, em outras nuvens e no local. Atenda aos requisitos de segurança e conformidade, enquanto desfruta de uma experiência de gerenciamento unificada e total observabilidade em todas as APIs internas e externas. Para obter mais informações, consulte Gerenciamento de API do Azure. |
Serviços complementares do Azure
Além dos serviços descritos anteriormente, a Microsoft também oferece os seguintes serviços complementares que fornecem recursos subjacentes para o Azure Integration Services e que você provavelmente usará em um projeto de migração:
Serviço | Description |
---|---|
Armazenamento do Azure | Fornece armazenamento altamente disponível, massivamente escalável, durável, seguro e moderno para vários objetos de dados na nuvem. Você pode acessar esses objetos de dados de qualquer lugar do mundo por HTTP ou HTTPS usando uma API REST. O Azure Integration Services usa esses recursos para armazenar com segurança dados de configuração e telemetria para você enquanto as transações fluem pela plataforma. Para obter mais informações, consulte Armazenamento do Azure. |
Controlo de acesso baseado em funções do Azure (RBAC do Azure) | Gerencie o acesso aos recursos da nuvem, que é uma função crítica para qualquer organização que use a nuvem. O RBAC do Azure é um sistema de autorização criado no Azure Resource Manager que fornece gerenciamento de acesso refinado aos recursos do Azure. Você pode gerenciar quem pode acessar os recursos do Azure, o que eles podem fazer com esses recursos e quais áreas eles podem acessar. Para obter mais informações, consulte Azure RBAC. |
Azure Key Vault | Fornece recursos para ajudá-lo a resolver problemas relacionados ao gerenciamento de segredos, gerenciamento de chaves e gerenciamento de certificados. O Azure Integration Services fornece integração com o Azure Key Vault por meio de definições de configuração de aplicativos e por meio de um conector. Esse recurso permite armazenar segredos, credenciais, chaves e certificados de maneira segura, mas conveniente. Para obter mais informações, consulte Azure Key Vault. |
Azure Policy | Fornece recursos que ajudam a aplicar padrões organizacionais e avaliar a conformidade de forma escalável. Por meio do painel de conformidade, você obtém uma visão agregada para que possa avaliar o estado geral do ambiente com a capacidade de detalhar a granularidade por recurso e por política. O Azure Integration Services integra-se com a Política do Azure para que possa implementar de forma eficiente uma governação generalizada. Para obter mais informações, veja Azure Policy. |
Redes do Azure | Fornece uma ampla variedade de recursos de rede, incluindo conectividade, serviços de proteção de aplicativos, serviços de entrega de aplicativos e monitoramento de rede. O Azure Integration Services usa esses recursos para fornecer conectividade entre serviços usando redes virtuais e pontos de extremidade privados. Para obter mais informações, consulte Rede do Azure. |
Hubs de Eventos do Azure | Crie pipelines de dados dinâmicos e responda imediatamente aos desafios de negócios transmitindo milhões de eventos por segundo de qualquer fonte com este serviço de ingestão de dados em tempo real totalmente gerenciado que é simples, confiável e escalável. O Gerenciamento de API executa o log personalizado usando Hubs de Eventos, que é uma das melhores soluções ao implementar uma solução de rastreamento dissociada no Azure. Para obter mais informações, consulte Hubs de Eventos do Azure. |
Base de Dados SQL do Azure | Em algum momento, talvez seja necessário criar estratégias de log personalizadas ou configurações personalizadas para dar suporte às suas soluções de integração. Embora o SQL Server seja comumente usado no local para essa finalidade, o Banco de Dados SQL do Azure pode oferecer uma solução viável ao migrar bancos de dados SQL Server locais para a nuvem. Para obter mais informações, consulte Banco de Dados SQL do Azure. |
Configuração da Aplicação Azure | Gerencie centralmente as configurações do aplicativo e os sinalizadores de recursos. Programas modernos, especialmente aqueles executados em uma nuvem, geralmente têm muitos componentes distribuídos por natureza. Distribuir as definições de configuração entre esses componentes pode levar a erros difíceis de solucionar durante a implantação do aplicativo. Com a Configuração do aplicativo, você pode armazenar todas as configurações do seu aplicativo e proteger seus acessos em um só lugar. Para obter mais informações, consulte Configuração do Aplicativo do Azure. |
Azure Monitor | O Application Insights, que faz parte do Azure Monitor, fornece gerenciamento e monitoramento de desempenho de aplicativos para aplicativos ativos. Armazene a telemetria de aplicativos e monitore a integridade geral de sua plataforma de integração. Você também tem a capacidade de definir limites e receber alertas quando o desempenho exceder os limites configurados. Para obter mais informações, consulte Application Insights. |
Azure Automation | Automatize suas tarefas de gerenciamento do Azure e orquestre ações em sistemas externos no Azure. Criado com base no fluxo de trabalho do PowerShell para que você possa usar os vários recursos dessa linguagem. Para obter mais informações, consulte Automação do Azure. |
Experiências de desenvolvedor suportadas
Esta seção descreve as ferramentas de desenvolvedor que o servidor BizTalk e o Azure Integration Services suportam:
Oferta | Produto ou serviço com ferramentas suportadas |
---|---|
BizTalk Server | Cada versão do BizTalk Server suporta uma versão específica do Visual Studio. Por exemplo, o BizTalk Server 2020 oferece suporte ao Visual Studio 2019 Enterprise ou Professional. No entanto, o Visual Studio Community Edition não é suportado. |
Serviços de Integração do Azure | - Azure Logic Apps (Standard): portal do Azure e Visual Studio Code - Azure Logic Apps (Consumo): portal do Azure e Visual Studio Code - Azure Functions: portal do Azure, Visual Studio Code e Visual Studio 2022 - Azure API Management: portal do Azure e Visual Studio Code - Azure Service Bus: portal do Azure e Service Bus Explorer - Azure Data Factory: portal do Azure e Visual Studio 2015 |
Servidor BizTalk versus Aplicativos Lógicos do Azure
Para comparar o BizTalk Server com os Aplicativos Lógicos do Azure e discutir como migrar, vamos primeiro resumir brevemente o que o BizTalk Server faz. Originalmente disponível em 2000, o BizTalk Server é uma plataforma de middleware local, estável e que conecta vários sistemas usando adaptadores. Esta plataforma funciona como um intermediário entre empresas, sistemas ou aplicações e é agora uma plataforma de integração bem estabelecida. Para simplificar o desafio de combinar diferentes sistemas que são desenvolvidos em diferentes idiomas e podem ser conectados usando diferentes protocolos e formatos, o BizTalk Server oferece os seguintes recursos principais:
Orquestração (fluxo de negócios)
Fornece a capacidade de criar e executar orquestrações ou processos de negócios graficamente definidos.
Mensagens
Fornece a capacidade de se comunicar com uma ampla gama de aplicativos de software. Os adaptadores permitem que o componente de mensagens do BizTalk Server interaja com vários protocolos e formatos de dados.
O mecanismo do BizTalk Server inclui os seguintes componentes:
Componente | Description |
---|---|
Motor de Regras de Negócio (BRE) | Avalia conjuntos complexos de regras. |
Logon único corporativo (SSO) | Fornece a capacidade de mapear informações de autenticação entre sistemas Windows e não-Windows. |
Monitorização de Atividades Empresariais (BAM) | Permite que os operadores de informações monitorem um processo de negócios em execução. |
Hub do Grupo | Permite que a equipe de suporte gerencie o mecanismo e as orquestrações executadas. |
Como funciona o BizTalk Server?
O BizTalk Server usa uma arquitetura de mecanismo de mensagens de publicação-assinatura com o banco de dados MessageBox no coração. MessageBox é responsável por armazenar mensagens, propriedades de mensagens, assinaturas, estados de orquestração, dados de rastreamento e outras informações.
Quando o BizTalk Server recebe uma mensagem, o servidor passa e processa a mensagem através de um pipeline. Esta etapa normaliza e publica a mensagem no MessageBox. Em seguida, o BizTalk Server avalia quaisquer assinaturas existentes e determina o destinatário pretendido da mensagem, com base nas propriedades de contexto da mensagem. Finalmente, o BizTalk Server roteia a mensagem para o destinatário pretendido, com base em assinaturas ou filtros. Esse destinatário é uma orquestração ou uma porta Enviar, que é um destino para onde o BizTalk Server envia mensagens ou fonte de onde o BizTalk Server pode receber mensagens. O BizTalk Server transmite mensagens através de uma porta Enviar passando-as através de um pipeline Enviar. O pipeline Send serializa as mensagens no formato nativo esperado pelo recetor antes de enviar as mensagens por meio de um adaptador.
O banco de dados MessageBox tem os seguintes componentes:
Agente de mensagens
O BizTalk Server interage com o MessageBox usando esse agente, que fornece interfaces para publicar mensagens, assinar mensagens, recuperar mensagens e muito mais.
Um ou mais bancos de dados do SQL Server
Esses bancos de dados fornecem o armazenamento de persistência para mensagens, partes de mensagens, propriedades de mensagens, assinaturas, estado de orquestração, dados de rastreamento, filas de host para roteamento e muito mais.
A imagem a seguir mostra como o mecanismo de mensagens do BizTalk Server funciona:
Depois que uma porta de recebimento recebe uma mensagem, MessageBox armazena essa mensagem para processamento por processos de negócios ou para roteamento para quaisquer portas de envio que tenham assinaturas para mensagens específicas.
Para obter mais informações, consulte Arquitetura de publicação-assinatura mais adiante neste guia.
Processos de negócio
Esta seção descreve opções para projetar e criar processos de negócios que você pode executar no BizTalk Server e no Azure Integration Services.
BizTalk Server
No BizTalk Server, orquestrações são processos de negócios executáveis que podem assinar (receber) mensagens e publicar (enviar) mensagens por meio do banco de dados MessageBox. As orquestrações podem construir novas mensagens e receber mensagens usando a infraestrutura de assinatura e roteamento. Quando o MessageBox preenche assinaturas para orquestrações, uma nova instância (execução de orquestração) é ativada e o MessageBox entrega a mensagem. Se necessário, a instância é reidratada e a mensagem é entregue. Quando as mensagens são enviadas de uma orquestração, elas são publicadas no MessageBox da mesma forma que uma mensagem que chega a um local de recebimento com as propriedades apropriadas adicionadas ao banco de dados para roteamento.
Para habilitar as mensagens de publicação-assinatura, as orquestrações usam associações que ajudam a criar assinaturas. As portas de orquestração são portas lógicas que descrevem uma interação. Para entregar mensagens, você deve vincular essas portas lógicas a uma porta física, mas esse processo de vinculação nada mais é do que configurar assinaturas para roteamento de mensagens.
O BizTalk Server oferece as seguintes vantagens de exemplo:
Baseado no estruturador (declarativo)
Projete processos complexos usando ferramentas de design fáceis de entender para implementar padrões e fluxos de trabalho que, de outra forma, poderiam ser difíceis de implementar no código.
Abstração com sistemas finais
Projete processos com foco nas mensagens, não no sistema final. Por exemplo, ao desenvolver suas soluções, você não precisa se preocupar se vai usar um adaptador FILE ou um adaptador FTP. Em vez disso, você se concentra no tipo de comunicação, seja de uma forma ou de solicitação-resposta, e no tipo de mensagem que deseja processar. Mais tarde, ao implantar suas soluções, você poderá especificar o adaptador e os sistemas finais.
Azure Logic Apps
Em Apps](logic-apps-overview.md), você pode criar processos de negócios executáveis e aplicativos como fluxos de trabalho de aplicativos lógicos usando uma maneira de "bloco de construção" de programação com um designer visual e operações pré-criadas a partir de centenas de conectores, exigindo código mínimo. Um fluxo de trabalho de aplicativo lógico começa com uma operação de gatilho seguida por uma ou mais operações de ação, com cada operação funcionando como uma etapa lógica no processo de implementação do fluxo de trabalho. Seu fluxo de trabalho pode usar ações para chamar software, serviços e sistemas externos. Algumas ações executam tarefas de programação, como condicionais (instruções if), loops, operações de dados, gerenciamento de variáveis e muito mais.
Os Aplicativos Lógicos do Azure oferecem as seguintes vantagens de exemplo:
Baseado no estruturador (declarativo)
Projete processos complexos usando ferramentas de design fáceis de entender para implementar padrões e fluxos de trabalho que, de outra forma, poderiam ser difíceis de implementar no código.
Flexível e escalável
As Aplicações Lógicas do Azure são um serviço informático baseado na nuvem, sem servidor e altamente escalável, que se dimensiona e adapta automaticamente para satisfazer as necessidades empresariais em evolução.
Conecta-se a qualquer coisa
Selecione a partir de uma galeria em constante expansão com centenas de conectores pré-construídos para criar seus fluxos de trabalho. Um conector fornece operações que você pode usar como etapas em seus fluxos de trabalho. Você pode criar soluções de integração para a maioria dos serviços e sistemas da Microsoft e de parceiros, incluindo BizTalk Server, Salesforce, Office 365, bancos de dados SQL, a maioria dos serviços do Azure, como Azure Functions, Armazenamento do Azure, Barramento de Serviço do Azure e muitos outros, além de aplicativos ou sistemas locais, mainframes, midranges, SaaS e APIs. Se não existir nenhum conector pré-construído para o recurso que você deseja acessar, você pode usar a operação HTTP genérica para se comunicar com o serviço ou pode criar um conector personalizado.
Componentes reutilizáveis
As plataformas de integração oferecem maneiras de resolver problemas de maneira consistente e unificada, o que muitas vezes você pode alcançar por meio de componentes reutilizáveis. Esta seção descreve como você pode reutilizar componentes no BizTalk Server e no Azure Integration Services.
BizTalk Server
Orquestrações
Você pode criar e compartilhar lógica de negócios comum como orquestrações em diferentes fluxos de trabalho, internamente dentro do mesmo aplicativo ou com vários aplicativos. Você pode acionar orquestrações usando o mecanismo nativo de publicação-assinatura no BizTalk Server (de forma dissociada) ou usando as formas de orquestração chamadas Orquestração de Chamadas para chamadas síncronas ou Iniciar Orquestração para chamadas assíncronas.
Adaptadores
Os adaptadores são componentes de software que fornecem conectividade entre o BizTalk Server e parceiros comerciais usando protocolos de dados e formatos de documento comumente reconhecidos. Esses componentes facilitam o envio e o recebimento de mensagens usando um mecanismo de entrega que está em conformidade com um padrão comumente reconhecido, como SMTP, FTP, HTTP e muito mais. Os adaptadores fazem parte da plataforma principal, portanto, todos os aplicativos existentes os compartilham. Você também pode estender essa camada criando um adaptador personalizado, nativo ou baseado no Windows Communication Foundation (WCF), usando o BizTalk Adapter Framework.
Esquemas
Os esquemas XSD (XML Schema Definition) habilitam mensagens baseadas em contrato no BizTalk Server. Para evitar a criação de esquemas redundantes, você pode fazer referência a esquemas de assemblies compilados. Para usar esquemas compartilhados, você deve adicionar uma referência ao assembly compartilhado do seu projeto do BizTalk.
Embora essa etapa possa parecer simples, o gerenciamento de alterações em assemblies compartilhados pode se tornar difícil devido ao encadeamento de dependências. Se o assembly compartilhado exigir uma atualização, você deve remover todos os projetos que fazem referência ao assembly compartilhado do BizTalk Server para instalar a atualização. No entanto, para evitar essas restrições, você pode implementar o controle de versão de assembly onde você implanta uma nova versão para um esquema ou esquemas compartilhados sem interromper suas soluções existentes.
Mapas e functóides personalizados
Os mapas permitem a conversão ou transformação de mensagens XML no BizTalk Server. Pode partilhar mapas, mas, tal como os esquemas partilhados, aplicam-se precauções semelhantes aos mapas partilhados. Devido ao encadeamento de dependências, prossiga com cuidado e certifique-se de ter um ciclo de vida de desenvolvimento de software maduro para gerenciar a mudança.
Em mapas, os functóides executam cálculos usando fórmulas predefinidas e valores específicos chamados argumentos. O BizTalk Server fornece muitos functoids para suportar uma variedade de operações diversas. Functoids personalizados fornecem uma maneira de estender o intervalo de operações disponíveis no ambiente de mapeamento do BizTalk Server.
Se você começar a criar muitos mapas, perceberá que está implementando repetidamente uma lógica semelhante. Consequentemente, você gastará tempo mantendo vários trechos de código equivalentes que normalmente copia e cola em vários locais dentro de um mapa ou entre mapas. Considere transformar esses trechos de código em um functóide personalizado. Dessa forma, você cria o functoid apenas uma vez, mas você pode reutilizar o functoid em quantos mapas quiser e atualizar o functoid em apenas um lugar. Cada functoid personalizado é implantado como um assembly .NET usando classes derivadas do namespace Microsoft.BizTalk.BaseFunctoids . Um único assembly pode conter mais de um functoid personalizado.
Assemblies do .NET Framework
Você pode compartilhar esses assemblies entre projetos do BizTalk Server. Esses assemblies são mais fáceis de gerenciar de uma perspetiva de dependência. Desde que não existam alterações significativas, uma atualização para um assembly .NET Fx requer a atualização da DLL no GAC (Global Assembly Cache), que disponibiliza automaticamente as alterações para outros assemblies. Se existirem alterações de quebra, você também deve atualizar o projeto dependente para acomodar as alterações no assembly do .NET Framework.
Pipelines personalizados e componentes de pipeline
Quando o BizTalk Server recebe e envia mensagens, o servidor pode precisar preparar e transformar mensagens para entrada e saída, devido a razões comerciais. No BizTalk Server, os pipelines fornecem uma implementação do padrão de integração de Pipes and Filters e incluem muitos recursos, como um codificador e decodificador JSON, decodificador MIME ou SMIME e assim por diante.
Quando você precisa adicionar informações ao contexto de uma mensagem que requer personalização de pipeline, o BizTalk Server fornece a capacidade de personalizar esses pipelines criando componentes de pipeline personalizados. Um componente de pipeline personalizado é a.NET classe que você usa para implementar várias interfaces do BizTalk e, em seguida, usar dentro de diferentes estágios de qualquer pipeline personalizado. Para escrever código para esse componente, você pode usar C# ou Visual Basic para .NET.
Políticas do mecanismo de regras
Uma política do Business Rules Engine é outro tipo de artefato que você pode compartilhar entre aplicativos do BizTalk Server implantados no mesmo grupo do BizTalk. Se você tiver regras comuns do Business Rules Engine, por exemplo, relacionadas ao roteamento de mensagens, poderá gerenciar essas regras em um único local e compartilhá-las amplamente entre os aplicativos BizTalk instalados. O Mecanismo de Regras de Negócio armazena essas regras em cache, portanto, se você fizer atualizações nessas regras, deverá reiniciar o Serviço de Atualização do Mecanismo de Regras de Negócios. Caso contrário, as alterações serão captadas no próximo Tempo Limite de Cache.
Azure Logic Apps
Conta de integração
Para os Aplicativos Lógicos do Azure, uma conta de integração é um contêiner baseado em nuvem e um recurso do Azure que fornece acesso centralizado a artefatos reutilizáveis. Para fluxos de trabalho de aplicativos lógicos de consumo, esses artefatos incluem parceiros comerciais, contratos, esquemas XSD, mapas XSLT, mapas baseados em modelos Liquid, certificados, configurações em lote e assemblies .NET Fx.
Para fluxos de trabalho de aplicativos lógicos padrão, os Aplicativos Lógicos do Azure introduziram recentemente o suporte para chamar assemblies .NET Fx de transformações XSLT sem exigir uma conta de integração. Como alternativa, você pode adicionar esquemas, mapas e assemblies a um projeto de aplicativo lógico padrão no Visual Studio Code e, posteriormente, implantar no Azure.
APIs
As APIs permitem experiências digitais, tornam os dados e serviços reutilizáveis e universalmente acessíveis, simplificam a integração de aplicativos e sustentam novos produtos digitais. Com a proliferação e a crescente dependência de APIs, as organizações precisam gerenciá-las como ativos de primeira classe durante todo o seu ciclo de vida.
Você pode reutilizar APIs, especialmente aquelas gerenciadas com o Gerenciamento de API do Azure, dentro dos Aplicativos Lógicos do Azure. Depois de adicionar APIs ao Gerenciamento de API do Azure, você pode usar o conector Gerenciamento de API com fluxos de trabalho de aplicativos lógicos para acessar facilmente as APIs de maneira gerenciada e controlada. Os Aplicativos Lógicos do Azure também dão suporte à criação e ao uso de APIs personalizadas para que sua organização possa promover a reutilização em toda a empresa e evitar conectores redundantes desnecessários que os desenvolvedores poderiam criar de outra forma. As APIs personalizadas também democratizam quem pode usar essas APIs, em vez de fazer com que o desenvolvedor descubra a mecânica para usar uma API específica.
Conectores personalizados
Se não existirem conectores pré-criados para as APIs que você deseja usar, você poderá envolver uma API externa ou externa com um esquema OpenAPI para criar um conector personalizado e acessar esse conector a partir dos fluxos de trabalho do aplicativo lógico de consumo com as permissões apropriadas. O conector personalizado cria um contrato entre os Aplicativos Lógicos do Azure e a API que permite a montagem fácil de mensagens de solicitação e para que os Aplicativos Lógicos do Azure recebam uma resposta digitada que você pode usar em ações downstream. Há suporte para APIs REST e APIs SOAP e podem fazer referência a APIs públicas ou privadas que existem em sua rede local.
Para fluxos de trabalho de aplicativos lógicos padrão, você pode criar seus próprios conectores personalizados internos baseados em um provedor de serviços.
Ao implementar um conector personalizado, você simplifica a experiência de desenvolvimento criando uma interface comum para enviar mensagens de solicitação e receber respostas digitadas. Para obter mais informações, consulte Conectores e APIs personalizados.
Adaptadores e conectores
A seção a seguir descreve os conceitos de adaptadores e conectores, respectivamente, no BizTalk Server e no Azure Integration Services.
BizTalk Server
Para trocar mensagens com sistemas, aplicativos e entidades externos, o BizTalk Server fornece adaptadores, que são componentes COM ou .NET Fx que transferem mensagens de e para pontos de extremidade de negócios, como sistemas de arquivos, bancos de dados e aplicativos de negócios personalizados usando vários protocolos de comunicação. O BizTalk Server fornece adaptadores nativos que suportam vários protocolos, por exemplo:
- Um adaptador de arquivo que suporta o envio e o recebimento de mensagens de um local de arquivo
- Adaptadores para protocolos EDI, FTP, HTTP, MSMQ, SMTP, POP3 e SOAP
- Um adaptador para o Windows SharePoint Services
O BizTalk Adapter Framework oferece um mecanismo estável e aberto para todos os adaptadores implementarem ou acessarem o trabalho a partir do mecanismo de mensagens do BizTalk Server. As interfaces no namespace Microsoft.BizTalk.Adapter.Framework permitem que os adaptadores modifiquem as páginas de propriedades de configuração. O BizTalk Adapter Framework também fornece a capacidade de importar serviços e esquemas para um projeto do BizTalk. Adaptadores de parceiros também estão disponíveis de vários fornecedores e membros da comunidade. Para obter uma lista de adaptadores conhecidos, consulte BizTalk Server: Lista de adaptadores de terceiros.
Azure Logic Apps
Quando cria fluxos de trabalho com as Aplicações Lógicas do Azure, pode utilizar conectores pré-criados para o ajudar a trabalhar de forma fácil e rápida com dados, eventos e recursos noutras aplicações, serviços, sistemas, protocolos e plataformas, normalmente sem ter de escrever qualquer código. Os Aplicativos Lógicos do Azure fornecem uma galeria em constante expansão com centenas de conectores que você pode usar. Você pode criar soluções de integração para muitos serviços e sistemas, baseados na nuvem ou no local, da Microsoft e de parceiros, como BizTalk Server, Salesforce, Office 365, bancos de dados SQL, a maioria dos serviços do Azure, mainframes, APIs e muito mais. Alguns conectores fornecem operações que executam operações de programação, como instruções condicionais (if), loops, operações de dados, gerenciamento de variáveis e assim por diante. Se nenhum conector estiver disponível para o recurso desejado, você poderá usar a operação HTTP genérica para se comunicar com o serviço ou poderá criar um conector personalizado.
Tecnicamente, um conector é um proxy ou um wrapper em torno de uma API que o serviço ou sistema subjacente usa para se comunicar com os Aplicativos Lógicos do Azure. Esse conector fornece as operações que você usa em seus fluxos de trabalho para executar tarefas. Uma operação está disponível como um gatilho ou ação com propriedades que você pode configurar. Alguns gatilhos e ações também exigem que você primeiro crie e configure uma conexão com o serviço ou sistema subjacente. Se necessário, você também autenticará o acesso a uma conta de usuário.
A maioria dos conectores nos Aplicativos Lógicos do Azure é um conector interno ou gerenciado. Alguns conectores estão disponíveis em ambas as versões. As versões disponíveis dependem da criação de um fluxo de trabalho de aplicativo lógico de consumo ou um fluxo de trabalho de aplicativo lógico padrão.
Os conectores internos são projetados para serem executados nativamente no tempo de execução dos Aplicativos Lógicos do Azure e geralmente têm melhor desempenho, taxa de transferência, capacidade ou outros benefícios em comparação com qualquer equivalente de conector gerenciado.
Os conectores gerenciados são implantados, hospedados e gerenciados pela Microsoft no Azure. Esses conectores fornecem gatilhos e ações para serviços de nuvem, sistemas locais ou ambos. Nos fluxos de trabalho do aplicativo lógico padrão, todos os conectores gerenciados são agrupados como conectores do Azure . No entanto, nos fluxos de trabalho do aplicativo lógico de consumo, os conectores gerenciados são agrupados como Standard ou Enterprise, com base em seu nível de preço.
Para obter mais informações, veja a seguinte documentação:
- Visão geral dos conectores integrados
- Visão geral dos conectores gerenciados
- Conectores gerenciados disponíveis nos Aplicativos Lógicos do Azure
Conectividade de aplicativos
A seção a seguir descreve opções para se conectar com outros aplicativos do BizTalk Server e do Azure Integration Services.
BizTalk Server
Os adaptadores fornecem os recursos de conectividade no BizTalk Server e são executados localmente no servidor BizTalk que executa a operação de envio ou recebimento. Aproximadamente 30 adaptadores prontos para uso estão disponíveis, enquanto um pequeno ecossistema de adaptadores ISV fornece funcionalidade adicional. Com esses adaptadores sendo executados localmente, a Autenticação do Windows é um método de autenticação popular. Os adaptadores mais usados incluem FILE, SFTP, SQL, WCF (Basic-HTTP), HTTP e SMTP. Nessa lista, você pode determinar que os adaptadores no BizTalk Server são principalmente adaptadores de protocolo. Como resultado, os adaptadores geralmente usam um padrão de mensagens orientado a mensagens onde uma mensagem completa é trocada com outros sistemas onde esses sistemas são responsáveis por analisar os dados antes de carregá-los no armazenamento de dados final.
Azure Logic Apps
Os conectores fornecem os recursos de conectividade nos Aplicativos Lógicos do Azure e oferecem uma abstração sobre as APIs que geralmente pertencem ao sistema SaaS subjacente. Por exemplo, serviços como o SharePoint são criados usando uma abordagem API-first em que as APIs fornecem funcionalidade ao serviço para usuários finais, mas a mesma funcionalidade é exposta para outros sistemas chamarem por meio de uma API. Para simplificar a chamada dessas APIs, os conectores usam metadados para descrever o contrato de mensagens para que os desenvolvedores saibam quais dados são esperados na solicitação e na resposta.
A captura de tela a seguir mostra a experiência de pesquisa de operações de conector no designer para um fluxo de trabalho de aplicativo lógico padrão em Aplicativos Lógicos do Azure de locatário único. Ao selecionar No aplicativo na lista Tempo de execução , você pode encontrar conectores internos, como Azure Functions, Azure Service Bus, IBM DB2, SQL Server, Armazenamento do Azure, Sistema de Arquivos, HTTP e muito mais. Se você selecionar Compartilhado, poderá encontrar mais de 1.000 conectores, incluindo outros conectores SaaS da Microsoft, conectores SaaS de parceiros e assim por diante.
Serviços Web e conectividade API
As seções a seguir descrevem o suporte para serviços Web e conectividade de API no BizTalk Server e nos Aplicativos Lógicos do Azure.
BizTalk Server
O suporte a serviços da Web é um recurso popular no BizTalk Server e está disponível integrando-se ao Windows Communication Foundation (WCF). Esse suporte no BizTalk se enquadra em duas categorias: publicação e consumo de serviços WCF.
Os adaptadores WCF fornecem suporte para padrões WS-*, como WS-Addressing, WS-Security e WS-AtomicTransaction. No entanto, WS-ReliableMessaging não é suportado nesta versão dos adaptadores WCF.
Os adaptadores WCF suportam Single Sign On (SSO) por meio de representação e adquirem o tíquete Enterprise SSO para usar SSO com adaptadores WCF. Esse recurso permite que o contexto do usuário flua entre os sistemas. Do ponto de vista da autenticação, a Autenticação de Serviço suporta os seguintes tipos: Nenhum, Windows e Certificado. A Autenticação de Cliente suporta os seguintes tipos: Anónimo, Nome de Utilizador, Windows e Certificado. Os modos de segurança suportados incluem os seguintes tipos: Transporte, Mensagem e Misto.
WCF suporta transações usando o protocolo WS-AtomicTransaction, que você pode encontrar em adaptadores WCF como WCF-WsHttp, WCF-NetTcp e WCF-NetMsmq. Esse recurso é suportado nos seguintes cenários:
- Envio transacional de mensagens para o banco de dados MessageBox
- Transmissão transacional de mensagens do MessageBox para um destino transacional
O escopo transacional é limitado pelo componente MessageBox. Por exemplo, uma orquestração do BizTalk não pode participar da transação de um cliente. Da mesma forma, um ponto de extremidade de destino não pode participar de uma transação iniciada por uma orquestração do BizTalk.
A extensibilidade do WCF está disponível por meio de associações personalizadas do WCF. Você precisará compilar e adicionar código personalizado ao GAC (Global Assembly Cache). Você também precisará atualizar o arquivo machine.config para incluir a nova extensão. Depois que a ligação é instalada, a extensão é visível para os adaptadores WCF-Custom e WCF-CustomIsolated .
O BizTalk Server pode expor locais de recebimento WCF-BasicHTTP como pontos de extremidade no Gerenciamento de API do Azure quando você usa o Console de Administração do BizTalk. Você também pode expor seus pontos de extremidade SOAP por meio do Gerenciamento de API do BizTalk Server usando o Gerenciamento de API no portal do Azure. Para obter mais informações, consulte Publicar pontos de extremidade WCF-BasicHTTP do BizTalk no Gerenciamento de API.
Azure Logic Apps
O modelo de conectividade nos Aplicativos Lógicos do Azure difere do BizTalk Server, em parte devido à evolução da economia da API. À medida que mais organizações expõem o acesso a sistemas e dados subjacentes, era necessária uma abordagem independente da plataforma. REST é agora a abordagem arquitetônica dominante para projetar serviços Web modernos.
Nos Aplicativos Lógicos do Azure, REST é a abordagem padrão para conectar sistemas. À medida que a Microsoft e outros fornecedores de software expõem serviços RESTful sobre seus sistemas e dados, os Aplicativos Lógicos do Azure podem expor e consumir esse tipo de informação. A especificação OpenAPI torna essa capacidade possível para humanos e computadores entenderem a interação entre um cliente e um servidor por meio de metadados. Como parte desse entendimento, as cargas úteis de solicitação e resposta são derivadas, o que significa que você pode usar conteúdo dinâmico para preencher as entradas de uma ação de fluxo de trabalho e usar as saídas da resposta em ações downstream.
Com base no fornecedor de software que implementa o serviço subjacente chamado por um conector, os esquemas de autenticação variam de acordo com o conector. Geralmente, esses esquemas incluem os seguintes tipos:
A Microsoft fornece camadas fortes de proteção criptografando dados durante o trânsito e em repouso. Quando o tráfego de clientes do Azure se move entre datacenters, fora dos limites físicos que não são controlados pela Microsoft ou em nome da Microsoft, um método de criptografia de camada de link de dados que usa IEEE 802.1AE MAC Security Standards (MACsec) se aplica de ponto a ponto em todo o hardware de rede subjacente.
A Microsoft oferece a opção de usar o protocolo TLS (Transport Layer Security) para proteger os dados que viajam entre os serviços de nuvem e os clientes. Os datacenters da Microsoft negociam uma conexão TLS com sistemas cliente que se conectam aos serviços do Azure. O TLS fornece autenticação forte, privacidade e integridade de mensagens, o que permite a deteção de adulteração, intercetação e falsificação de mensagens, juntamente com interoperabilidade, flexibilidade de algoritmo e facilidade de implantação e uso.
Embora esta seção se concentrasse na conectividade RESTful por meio de conectores, você pode implementar a conectividade do serviço Web SOAP por meio da experiência de conector personalizada ou usando a experiência de Gerenciamento de API, que fornece ótimos recursos SOAP. Para obter mais informações, consulte Aumentando o valor comercial integrando ativos herdados SOAP com aplicativos lógicos do Azure e API do Azure.
Uso do adaptador ou conector de bloco
As seções a seguir descrevem opções para impedir o uso do adaptador ou do conector, respectivamente, no BizTalk Server e nos Aplicativos Lógicos do Azure.
BizTalk Server
O BizTalk Server não inclui o conceito de bloquear adaptadores específicos de aplicativos diferentes, mas você pode "bloquear" seu uso em seus aplicativos removendo esses adaptadores do ambiente. Os adaptadores no BizTalk Server fazem parte das configurações da plataforma, portanto, os adaptadores instalados estão disponíveis para qualquer pessoa usar. Você também pode definir manipuladores de recebimento e envio específicos para cada adaptador, o que define os computadores que pertencem ao grupo do BizTalk que podem executar ou processar esses manipuladores.
Azure Logic Apps
Se sua organização não permitir a conexão a recursos restritos ou não aprovados usando conectores gerenciados nos Aplicativos Lógicos do Azure, você poderá bloquear a capacidade de criar e usar essas conexões em seus fluxos de trabalho de aplicativos lógicos. Com a Política do Azure, você pode definir e impor políticas que impeçam a criação ou o uso de conexões para conectores que você deseja bloquear. Por exemplo, por razões de segurança, poderá querer bloquear ligações a plataformas de redes sociais específicas ou a outros serviços e sistemas.
Durabilidade da mensagem
A seção a seguir descreve a persistência de mensagens no BizTalk Server e no Azure Integration Services.
BizTalk Server
O banco de dados MessageBox oferece outro benefício agindo como um ponto de persistência que garante que uma mensagem seja mantida no armazenamento antes de tentar enviar para um ponto de extremidade. Se a mensagem não for enviada depois de esgotar todas as tentativas de repetição configuradas, a mensagem será suspensa e armazenada no MessageBox.
Como administrador, pode retomar mensagens suspensas a partir da Consola de Administração do BizTalk. O mesmo comportamento acontece quando você usa orquestrações. O tempo de execução do Orchestration persiste a lógica de negócios, que você pode retomar se algo der errado. Por exemplo, você pode retomar uma mensagem em uma orquestração nos seguintes cenários:
- Uma mensagem enviada dentro de um escopo não atômico
- No final de um escopo transacional
- Ao iniciar uma nova instância de orquestração (forma Start Orchestration)
- Em um ponto de interrupção de depuração
- Quando o motor decide desidratar
- Quando a orquestração estiver concluída
- Quando o sistema é desligado
O BizTalk Server fornece todos esses recursos prontos para uso. Você não precisa se preocupar com a implementação de persistência porque o BizTalk Server lida com isso para você.
Azure Logic Apps
Os Aplicativos Lógicos do Azure fornecem durabilidade de mensagem das seguintes maneiras:
Os fluxos de trabalho com monitoração de estado, que são o padrão em aplicativos lógicos de consumo e estão disponíveis em aplicativos lógicos padrão, têm pontos de verificação que rastreiam o estado do fluxo de trabalho e armazenam mensagens à medida que passam pelas ações do fluxo de trabalho. Essa funcionalidade fornece acesso a dados avançados armazenados no histórico de execução da instância de gatilho e fluxo de trabalho, onde você pode revisar valores detalhados de entrada e saída.
Você pode executar novamente uma instância de fluxo de trabalho por meio do portal do Azure ou de uma API. Neste momento, toda a instância do fluxo de trabalho é executada, independentemente de onde qualquer falha aconteceu na execução anterior. Esse comportamento implica que as mensagens são entregues pelo menos uma vez e que o processamento idempotente acontece nos consumidores. Você também pode executar novamente a instância do fluxo de trabalho a partir de uma ação específica, atualmente em visualização. Esse recurso está disponível para todas as ações, exceto para cenários de simultaneidade não sequenciais e complexos.
Com as mensagens de bloqueio de visualização disponíveis no Barramento de Serviço do Azure, você pode confirmar uma mensagem após a execução bem-sucedida da mensagem ou abandoná-la quando ocorrer uma falha. Para usar esse recurso nos Aplicativos Lógicos do Azure, selecione o conector do Barramento de Serviço do Azure. Uma mensagem confirmada é removida da fila de mensagens, enquanto uma mensagem abandonada é desbloqueada e está disponível para processamento pelos clientes. O peek-lock é uma ótima maneira de conseguir mensagens "exatamente uma vez".
Arquitetura de publicação-assinatura
As seções a seguir descrevem opções para implementar o padrão publicar-assinar no BizTalk Server e nos Aplicativos Lógicos do Azure.
BizTalk Server
Os recursos de publicação-assinatura (pub-sub) existem por meio do banco de dados MessageBox, que é descrito anteriormente na seção Como funciona o BizTalk Server. Uma maneira popular de criar assinaturas é usando Propriedades Promovidas, que permitem identificar elementos ou atributos específicos em um esquema de mensagem definido como uma Propriedade Promovida. Em seguida, você pode estabelecer assinaturas para filtrar mensagens com base em critérios específicos em relação a uma Propriedade Promovida. Por exemplo, se você promoveu um elemento de esquema chamado City, poderá criar uma assinatura que filtre o elemento City para cidades específicas. Se seus critérios forem atendidos, sua assinatura, uma porta de envio ou uma orquestração receberão uma cópia da mensagem.
Azure Logic Apps
Com uma arquitetura completamente diferente do BizTalk Server, a maioria dos serviços no Azure Integration Services é baseada em eventos. Através do Azure Service Bus, as Aplicações Lógicas do Azure suportam a criação de soluções de publicação-subscrição. O Barramento de Serviço do Azure é um agente de mensagens empresarial totalmente gerenciado com filas de mensagens e tópicos de publicação-assinatura em um namespace. Você pode usar o Barramento de Serviço do Azure para separar aplicativos e serviços uns dos outros, o que fornece os seguintes benefícios:
- Trabalho de balanceamento de carga entre trabalhadores concorrentes.
- Encaminhe e transfira dados com segurança com controle através dos limites de serviço e aplicativo.
- Coordene o trabalho transacional que requer um alto grau de confiabilidade.
As Aplicações Lógicas do Azure incluem um conector do Azure Service Bus que pode utilizar para publicar e subscrever mensagens. A vantagem é que você pode usar mensagens independentemente do seu fluxo de trabalho. Ao contrário do BizTalk Server, suas mensagens são dissociadas da plataforma de fluxo de trabalho. Embora os recursos de mensagens e fluxo de trabalho estejam dissociados nos Aplicativos Lógicos do Azure, você pode criar assinaturas de mensagem no Barramento de Serviço do Azure, que dá suporte às propriedades da mensagem (propriedades do usuário). Você pode usar essas propriedades para fornecer pares chave-valor que são avaliados por filtros criados em uma assinatura de tópico. Você define essas propriedades de usuário quando configura uma operação do Barramento de Serviço do Azure adicionando um ou mais pares chave-valor. Para uma demonstração, consulte o seguinte vídeo: Submensagens de publicação usando o Azure Integration Services - Parte 2 Roteamento baseado em conteúdo.
Fora do Azure Integration Services, você também pode implementar cenários de publicação-assinatura usando nós também podemos usar o Cache do Azure para Redis.
Motor de regras de negócio
A seção a seguir descreve opções para configurar regras de negócios no BizTalk Server e no Azure Integration Services.
BizTalk Server
O BizTalk Server inclui um mecanismo de regras de encadeamento direto que permite construir regras "if-then-else" usando um editor visual. Você pode agrupar essas regras em uma política que pode ser transportada para outros ambientes em seu cenário de TI. Essas políticas também podem acessar esquemas XSD, código .NET Fx e tabelas de banco de dados do SQL Server para pesquisar dados e enriquecer saídas.
Azure Logic Apps
As Aplicações Lógicas do Azure incluem o Mecanismo de Regras de Aplicativos Lógicos do Azure, atualmente em visualização pública. Esse mecanismo de regras inclui o tempo de execução do BRE (Business Rules Engine) do BizTalk para que você possa usar as políticas BRE existentes do BizTalk. Atualmente, o suporte existe apenas para fatos XML e .NET Framework.
Transformação de dados
As seções a seguir descrevem os recursos de transformação de dados no BizTalk Server e nos Aplicativos Lógicos do Azure.
BizTalk Server
Fornece ferramentas avançadas para você transformar mensagens XML de um formato para outro. A transformação de dados usa mapas XSLT, que suportam objetos de extensão que permitem injetar código .NET Fx personalizado no meio desses mapas. Você também pode usar functoids prontos para uso que fornecem funcionalidade reutilizável que ajuda a construir mapas ricos.
Além das principais transformações XML, o BizTalk Server também fornece codificação e decodificação para formatos CSV e JSON para que você possa converter entre esses formatos e XML, oferecendo suporte para diferentes formatos.
Azure Logic Apps
Enterprise Integration Pack
Este componente segue conceitos semelhantes no BizTalk Server e torna os recursos B2B fáceis de usar nos Aplicativos Lógicos do Azure. No entanto, uma grande diferença é que o Enterprise Integration Pack é arquitetonicamente baseado em contas de integração. Essas contas simplificam a forma como você armazena, gerencia e usa artefatos, como parceiros comerciais, contratos, mapas (modelos XSLT ou Liquid), esquemas e certificados, para cenários B2B.
Modelos líquidos
Para transformações JSON básicas em fluxos de trabalho de aplicativos lógicos, você pode usar operações de dados internas, como a ação Compor ou a ação Analisar JSON. No entanto, alguns cenários podem exigir transformações avançadas e complexas que incluem elementos como iterações, fluxos de controle e variáveis. Para transformações entre JSON para JSON, JSON para texto, XML para JSON ou XML para texto, você pode criar um modelo Liquid que descreva o mapeamento ou a transformação necessários usando a linguagem de modelo de código aberto Liquid.
Operações XML
Para transformações XML em fluxos de trabalho de aplicativos lógicos, você pode usar operações XML internas, como a ação Compor XML com esquema e Analisar XML com ação de esquema .
Esquemas EDI
Os esquemas de documento EDI definem o corpo de um tipo de documento de transação EDI. Para seus fluxos de trabalho de aplicativos lógicos, todos os esquemas EDI do BizTalk no repositório GitHub de integração da Microsoft estão disponíveis publicamente para uso.
Aplicativos lógicos padrão
No portal do Azure, você pode carregar mapas e esquemas diretamente em um recurso de aplicativo lógico padrão. Se você estiver trabalhando com um projeto de aplicativo lógico padrão no Visual Studio Code, poderá carregar esses artefatos em suas respetivas pastas dentro da pasta Artefatos sem usar uma conta de integração. Você também pode chamar assemblies compilados personalizados a partir de mapas XSLT.
Funções do Azure
Você pode executar transformações de modelo XSLT ou Liquid usando C# ou qualquer outra linguagem de programação para criar uma função do Azure que você pode chamar com o Gerenciamento de API do Azure ou os Aplicativos Lógicos do Azure.
Conectividade de rede
A seção a seguir descreve a funcionalidade e os recursos de conectividade de rede no BizTalk Server e no Azure Integration Services.
BizTalk Server
Com o BizTalk Server sempre instalado em um ambiente de servidor, a conectividade de rede depende da configuração de rede do servidor subjacente. Quando você configura a conectividade de rede para o BizTalk Server, geralmente precisa configurar as seguintes áreas:
- Dependências
- Conectividade de entrada e saída para sistemas finais
Configuração de dependências
Para configurar totalmente o BizTalk Server em um ambiente multisservidor, você precisa prestar atenção especial a todas as dependências de conectividade de rede, que geralmente envolvem a configuração de firewall para habilitar portas TCP e UDP para serviços ou protocolos conhecidos. Por exemplo, esses serviços e protocolos incluem acesso a um mecanismo do SQL Server, Microsoft Distributed Transaction Coordinator (MSDTC), unidades de rede clusterizadas, serviços SSO se instalados em um servidor diferente e SharePoint são todos os serviços que você deve configurar criando regras de entrada e saída para implementar a conectividade.
Configuração de conectividade de entrada e saída
Depois de configurar totalmente o BizTalk Server e estar se preparando para implantar aplicativos, certifique-se de implementar regras de firewall que permitam que as instâncias de host se conectem e acessem diferentes serviços, sejam eles parte de uma rede interna ou externa. Quando você está pensando em conectividade com sistemas finais fora da rede da organização, você também deve incluir considerações de segurança. Vários sistemas dependem da definição de uma lista de endereços IP permitidos como sua primeira linha de defesa, portanto, idealmente, o BizTalk Server roteia toda a sua comunicação de saída através de uma lista bem definida de endereços IP públicos.
Quando os serviços de parceiros tentarem entrar em contato com o BizTalk Server, certifique-se de que eles não alcancem uma instância que esteja dentro da rede ou da camada interna da sua organização onde os serviços principais da organização possam estar disponíveis. Em vez disso, dê aos serviços de parceiros acesso a um ponto de extremidade que existe dentro de uma rede de perímetro, também conhecida como zona desmilitarizada (DMZ), que é o limite mais externo da rede de uma organização. No entanto, os serviços para onde o BizTalk Server deve rotear mensagens geralmente existem na rede da sua organização, portanto, eles devem ter acesso a essa camada interna.
Para alcançar esses cenários, existem várias abordagens, por exemplo:
- Implemente o BizTalk Server em uma rede de perímetro e permita apenas que seus próprios serviços, ou instâncias de host, acessem a rede da sua organização
- Configure dois BizTalk Servers com um em uma rede de perímetro e o outro na rede da sua organização. Em seguida, o servidor na rede de perímetro publica as mensagens que o servidor na rede organizacional consome.
- Desenvolva aplicativos personalizados ou software de dispositivo, como NetScaler e F5, que podem atuar como proxies reversos, receber mensagens em nome do BizTalk dentro da rede de perímetro e redirecionar essas chamadas para o BizTalk Server.
Azure Logic Apps
Conectividade de entrada e saída
O Azure fornece várias maneiras de isolar seus serviços dentro de um limite de rede e conectar cargas de trabalho locais e na nuvem. A lista a seguir descreve diferentes maneiras de integrar recursos do Azure com recursos dentro de um perímetro de rede:
Gateway de dados no local
Esse gateway atua como uma ponte entre o Azure e os recursos dentro de um perímetro de rede, fornecendo transferência de dados rápida e segura entre dados locais e vários serviços de nuvem da Microsoft. Esses serviços incluem Azure Logic Apps, Microsoft Power BI, Microsoft Power Apps, Microsoft Power Automate e Azure Analysis Services. Com esse gateway, você pode manter bancos de dados e outras fontes de dados em suas redes locais e usar com segurança esses dados locais em serviços de nuvem.
Ligações Híbridas
Tanto um serviço do Azure quanto um recurso no Serviço de Aplicativo do Azure, as Conexões Híbridas oferecem suporte a cenários e oferecem recursos além daqueles usados no Serviço de Aplicativo do Azure. Para obter mais informações sobre o uso fora do Serviço de Aplicativo do Azure, consulte Conexões híbridas de retransmissão do Azure. No Serviço de Aplicativo do Azure, você pode usar Conexões Híbridas para acessar recursos de aplicativos em qualquer rede que possa fazer chamadas de saída para o Azure pela porta 443. As Ligações Híbridas fornecem acesso a partir da sua aplicação a um ponto de extremidade TCP e não permitem uma nova forma de aceder à sua aplicação. No Serviço de Aplicativo do Azure, cada conexão híbrida se correlaciona a uma única combinação de host e porta TCP. Essa funcionalidade permite que seus aplicativos acessem recursos em qualquer sistema operacional, desde que exista um ponto de extremidade TCP. O Hybrid Connections não sabe nem se preocupa com o protocolo do aplicativo ou com o que você deseja acessar. Este recurso simplesmente fornece acesso à rede.
Integração da rede virtual
Com a integração da Rede Virtual do Azure, você pode conectar seu recurso do Azure a uma rede virtual configurada no Azure, dando ao seu aplicativo acesso aos recursos nessa rede virtual. A integração de rede virtual nos Aplicativos Lógicos do Azure é usada apenas para fazer chamadas de saída do seu recurso do Azure para sua rede virtual.
Com o emparelhamento de rede virtual, você pode conectar suas redes locais ao Azure, que fornece conectividade bidirecional entre recursos locais e serviços do Azure. O Azure Integration Services fornece conectividade de rede virtual, permitindo a integração híbrida. A imagem a seguir mostra um recurso de aplicativo lógico padrão com a página Rede aberta e a integração de rede virtual habilitada, conforme destacado na caixa Tráfego de saída . Essa configuração garante que todo o tráfego de saída saia dessa rede virtual.
Pontos finais privados
Um ponto final privado é uma interface de rede que utiliza um endereço IP privado a partir da rede virtual. Essa interface de rede se conecta de forma privada e segura a um recurso do Azure que é alimentado pelo Azure Private Link. Ao habilitar um ponto de extremidade privado, você traz esse recurso do Azure para sua rede virtual e permite que os recursos na rede façam chamadas de entrada para seu recurso do Azure.
A tabela a seguir mostra os métodos de conectividade de rede que cada recurso do Azure Integration Services pode usar:
Recurso | Gateway de dados no local | Ligações Híbridas | Integração da rede virtual | Pontos finais privados |
---|---|---|---|---|
API Management do Azure | ✅ | ✅ | ✅ | |
Azure Logic Apps (Consumo) | ✅ | |||
Aplicativos Lógicos do Azure (Padrão) | ✅ (com conectores do Azure) |
✅ (com conectores integrados) |
✅ (com conectores integrados) |
✅ |
Azure Service Bus | ✅ | ✅ | ||
Grelha de Eventos do Azure |
Código personalizado
As seções a seguir descrevem opções para criar e executar seu próprio código no BizTalk Server e nos Aplicativos Lógicos do Azure.
BizTalk Server
Você pode estender o BizTalk de várias maneiras usando o código .NET Fx personalizado, por exemplo:
Capacidade | Description |
---|---|
Código embutido | Você pode escrever código C# embutido dentro de uma forma Orchestration. Você também pode escrever código embutido dentro de um mapa do BizTalk. Em ambos os cenários, os trechos de código geralmente são simples por natureza e não podem ser depurados. |
Assemblies compilados | Você pode chamar esses assemblies dos seguintes locais: - Formas de expressão em uma orquestração - Mapas do BizTalk usando o Scripting Functoid - Políticas do Business Rules Engine - Pipelines como componentes de pipeline personalizados Você pode depurar assemblies compilados anexando o depurador do Visual Studio ao processo apropriado do Windows da instância do host. |
Adaptadores personalizados | O BizTalk Server inclui muitos adaptadores prontos para uso, mas você sempre pode criar seu próprio adaptador, se necessário. |
Comportamentos personalizados do WCF | O BizTalk Server inclui muitos adaptadores prontos para uso com a maioria baseada no Windows Communication Foundation (WCF). Em alguns casos, talvez seja necessário estender seus recursos desenvolvendo comportamentos personalizados, como a aplicação de um cabeçalho OAuth à comunicação do sistema. |
Extensibilidade em mapas do BizTalk Server | - Você pode criar código embutido usando C#, JScript, Visual Basic, XSLT ou XSLT Call Templates para suprimir algumas limitações ou dificuldades usando os functoides prontos para uso. - Você pode chamar um assembly externo usando o Scripting Functoid. - Você pode criar functoids personalizados para usar em todos os seus mapas. |
Azure Logic Apps
Os Aplicativos Lógicos do Azure fornecem a capacidade de criar e executar código .NET a partir do fluxo de trabalho do aplicativo lógico padrão. Para isso, você precisa usar o Visual Studio Code com a extensão Azure Logic Apps (Standard).
Além disso, o conector Inline Code Operations fornece as ações denominadas Executar código JavaScript, Executar código de script CSharp (visualização) e Executar código do PowerShell (visualização). Você pode usar essas ações para escrever pequenos trechos de código, que oferecem suporte a entradas e saídas de conteúdo dinâmico. O mecanismo de Aplicativos Lógicos do Azure espera que esses trechos de código tenham tempos de execução curtos. Depois que um trecho de código conclui a execução, a saída fica disponível para uso por ações downstream no fluxo de trabalho. Embora não exista atualmente suporte direto à depuração para essa ação, você pode exibir as entradas e saídas no histórico de execução da instância do fluxo de trabalho.
Conforme mencionado na seção Componentes reutilizáveis, o suporte para chamar assemblies .NET Fx de um mapa XSLT está atualmente disponível em fluxos de trabalho de aplicativos lógicos de consumo quando você carrega esses assemblies em uma conta de integração. Esse recurso ajuda a dar suporte a regras personalizadas de transformação de dados. Para fluxos de trabalho de aplicativos lógicos padrão, a equipe de Aplicativos Lógicos do Azure lançou recentemente suporte para chamar código .NET Fx de mapas XSLT sem exigir uma conta de integração. Você também pode adicionar assemblies e mapas a um projeto de aplicativo lógico padrão no Visual Studio Code e, posteriormente, implantar no Azure. Para obter mais informações, consulte Suporte a assembly do .NET Framework adicionado às transformações XSLT dos Aplicativos Lógicos do Azure (Padrão) e a seção Roteiro.
Você também pode estender fluxos de trabalho incluindo aplicativos de API do Azure ou aplicativos Web criados com o Serviço de Aplicativo do Azure. Quando você tem um requisito para hospedar aplicativos Web, APIs REST e back-ends móveis, o Serviço de Aplicativo do Azure é a solução baseada em HTTP. Você pode integrar aplicativos hospedados no Serviço de Aplicativo do Azure com serviços locais ou na nuvem. Esta plataforma suporta ambientes baseados em Windows e Linux para executar e dimensionar aplicações, juntamente com várias linguagens e frameworks, como ASP.NET Core, Java, Ruby, Node.js, PHP e Python.
Grupos de aplicações
As seções a seguir descrevem opções para organizar suas cargas de trabalho no BizTalk Server e nos Aplicativos Lógicos do Azure.
BizTalk Server
Parte do seu ciclo de vida de desenvolvimento de software inclui a criação e o gerenciamento de seu código e artefatos em pacotes lógicos. O BizTalk Server oferece suporte ao conceito de um aplicativo de tal forma que você pode implantar uma solução do Visual Studio em um aplicativo do BizTalk. Portanto, se você tiver cenários em que precisa compartilhar recursos, poderá fazer referência a outros aplicativos.
O BizTalk Server usa um modelo de compartilhamento explícito onde você pode adicionar referências a assemblies compilados. Desde que esses assemblies estejam no GAC (Global Assembly Cache), o BizTalk Runtime localiza e carrega assemblies conforme necessário. Uma desvantagem é que, quando você precisa atualizar os assemblies compartilhados, a menos que implemente um esquema de controle de versão, você precisa desinstalar todos os projetos do BizTalk que fazem referência aos assemblies antes de fazer a atualização. Essa limitação pode resultar em longos prazos de implantação e complexidade no gerenciamento de várias instalações e desinstalações.
Azure Logic Apps
Nos Aplicativos Lógicos do Azure, o recurso do aplicativo lógico de consumo inclui apenas um único fluxo de trabalho com monitoração de estado, o que significa que seu fluxo de trabalho e recurso de aplicativo lógico, que é seu aplicativo, sempre tem uma relação de 1 para 1. Com o recurso de aplicativo lógico padrão, o conceito de aplicativo evoluiu. Embora seu recurso de aplicativo lógico padrão ainda seja seu aplicativo, você pode incluir e executar vários fluxos de trabalho com esse recurso, resultando em uma relação de 1 para muitos. Se você estiver trabalhando localmente em um projeto de aplicativo lógico padrão no Visual Studio Code, seu recurso de aplicativo lógico será mapeado para esse único projeto. Com essa abordagem, você pode facilmente e logicamente agrupar cargas de trabalho, código e artefatos relacionados no mesmo projeto e implantar esse projeto como uma única unidade.
As arquiteturas de nuvem funcionam de forma diferente dos paradigmas baseados em servidor, como o BizTalk. Os Aplicativos Lógicos do Azure (Padrão) usam um modelo pull para trazer código e artefatos. Assim, como resultado, você copiará quaisquer artefatos adicionais necessários em seu projeto e, posteriormente, implantá-los com seu código e outros artefatos. Em alguns casos, você pode querer evitar ter que copiar todo o código e artefatos necessários. Em caso afirmativo, você pode considerar transformar essa funcionalidade em um serviço que você pode gerenciar separadamente, mas pode chamar de um fluxo de trabalho.
Por exemplo, suponha que você tenha uma transformação de dados amplamente usada pela sua organização. Em vez de incluir o mapa para a transformação em vários projetos de aplicativo lógico, você pode implementar uma interface que forneça a transformação como um serviço. Em seguida, você pode gerenciar o ciclo de vida desse serviço separadamente de seus projetos de aplicativo lógico e chamar esse serviço de seus fluxos de trabalho.
Com a capacidade de incluir vários fluxos de trabalho em um projeto de aplicativo lógico padrão, você pode perguntar como organizaria esses fluxos de trabalho dentro de um projeto ou em vários projetos? A resposta geralmente depende das suas necessidades, por exemplo:
- Afinidade com processos de negócios
- Monitoramento e suporte de ponta a ponta
- Segurança, controle de acesso baseado em função e isolamento de rede
- Desempenho e criticidade dos negócios
- Geo-localização e redundância geográfica
Para obter mais informações, consulte Organizando fluxos de trabalho de aplicativos lógicos nos Aplicativos Lógicos do Azure (Padrão).
Segurança e governação
A segurança e a governação são naturalmente importantes na construção de soluções integradas. Por definição, o middleware fica entre dois ou mais sistemas. Para se conectar e acessar esses sistemas ao estabelecer uma conexão, muitas vezes você precisa passar credenciais ou segredos, portanto, gerenciar essas informações confidenciais requer consideração.
BizTalk Server
O BizTalk inclui Enterprise Single Sign-On (SSO), que permite armazenar, mapear e transmitir credenciais criptografadas usadas por adaptadores. Essas informações criptografadas são armazenadas no banco de dados SSO. Você também pode configurar aplicativos afiliados SSO, que são entidades lógicas que representam um sistema ou sistema de linha de negócios que você deseja conectar.
Azure Logic Apps
As Aplicações Lógicas do Azure suportam as seguintes capacidades de segurança:
Azure Key Vault
Você pode armazenar credenciais, segredos, chaves de API e certificados usando o Cofre de Chaves do Azure. Nos Aplicativos Lógicos do Azure, você pode acessar essas informações usando o conector do Cofre da Chave do Azure e excluir essas informações dos logs e do histórico de execução da plataforma usando a funcionalidade de entradas e saídas seguras.
Mais adiante na seção Rastreamento , este guia descreve a funcionalidade de histórico de execução, que fornece uma repetição passo a passo da execução de um fluxo de trabalho. Embora os Aplicativos Lógicos do Azure ofereçam a proposta de valor de capturar todas as entradas e saídas em uma execução de fluxo de trabalho, às vezes você precisa gerenciar o acesso a dados confidenciais de forma mais granular. Você pode configurar ofuscação para esses dados usando o recurso de entradas e saídas seguras em gatilhos e ações para ocultar esse conteúdo do histórico de execução e impedir o envio desses dados para o Azure Monitor, especificamente o Log Analytics e o Application Insights. A imagem a seguir mostra um exemplo de resultado da ativação de entradas e saídas seguras no histórico de execução.
Integração baseada em OAuth
A maioria dos conectores usa esse tipo de autenticação ao criar conexões. Essa abordagem torna a integração com muitos serviços SaaS tão fácil quanto fornecer seu endereço de e-mail e senha. O Gerenciamento de API do Azure também dá suporte ao OAuth, para que você possa usar os dois serviços juntos fornecendo um esquema de autenticação unificado.
Esse recurso não está disponível nativamente no BizTalk Server.
Identidades geridas
Os Aplicativos Lógicos do Azure (Padrão) podem autenticar o acesso a contas de armazenamento usando uma identidade gerenciada. Além disso, alguns conectores suportam o uso de identidades gerenciadas para autenticar o acesso a recursos protegidos pelo Microsoft Entra ID. Quando você usa uma identidade gerenciada para autenticar sua conexão, não precisa fornecer credenciais, segredos ou tokens do Microsoft Entra.
Gerenciamento de aplicativos e gerenciamento de acesso
A seção a seguir descreve opções para gerenciar aplicativos e acesso no BizTalk Server e no Azure Integration Services.
BizTalk Server
Os administradores usam o Console do administrador do BizTalk Server para gerenciar aplicativos do BizTalk Server. Essa ferramenta é um aplicativo cliente espesso do MMC (Console de Gerenciamento Microsoft) que os administradores podem usar para implantar aplicativos, revisar transações anteriores, ativas e enfileiradas e executar atividades de solução de problemas profundas, como revisar rastreamentos e reenviar transações.
Azure Logic Apps
O portal do Azure é uma ferramenta comum que os administradores e o pessoal de suporte usam para exibir e monitorar a integridade das interfaces. Para os Aplicativos Lógicos do Azure, essa experiência inclui rastreamentos de transação avançados que estão disponíveis através do histórico de execução.
Controles de acesso granulares baseados em função (RBAC) também estão disponíveis para que você possa gerenciar e restringir o acesso aos recursos do Azure em vários níveis.
Armazenamento
A seção a seguir descreve opções para armazenamento de dados no BizTalk Server e no Azure Integration Services.
BizTalk Server
O BizTalk Server depende fortemente do SQL Server para armazenamento e persistência de dados. Todos os outros componentes e hosts no BizTalk Server têm funções específicas na integração de aplicativos de negócios diferentes, como recebimento, processamento ou roteamento de mensagens. No entanto, o computador do banco de dados captura e persiste esse trabalho no disco. Por exemplo, quando o BizTalk Server recebe uma mensagem de entrada, o host de recebimento persiste essa mensagem para o banco de dados MessageBox antes que outros hosts recuperem a mensagem para processamento e envio de orquestração.
Como você é responsável pelo provisionamento e gerenciamento de seus bancos de dados SQL, a alta disponibilidade é um componente de arquitetura importante para garantir o tempo de atividade. Para fornecer alta disponibilidade para os bancos de dados do BizTalk Server, os clientes geralmente usam o Windows Clustering para criar um cluster de servidor com dois ou mais computadores executando o SQL Server. Este cluster de servidor fornece redundância e tolerância a falhas para bancos de dados do BizTalk Server. Ao contrário do clustering com balanceamento de carga, em que um grupo de computadores trabalha em conjunto para aumentar a disponibilidade e a escalabilidade, o clustering de servidores normalmente envolve um par de computadores de banco de dados em uma configuração ativo-passivo para que um computador forneça recursos de backup para o outro.
Azure Logic Apps
Os Aplicativos Lógicos do Azure dependem do Armazenamento do Azure para armazenar e criptografar automaticamente dados em repouso. Esta encriptação protege os dados e ajuda a cumprir as obrigações de conformidade e segurança da sua organização. Por predefinição, o Armazenamento do Microsoft Azure utiliza chaves geridas pela Microsoft para encriptar os dados. Para obter mais informações, consulte Encriptação do Armazenamento do Microsoft Azure para dados inativos.
Quando você trabalha com o Armazenamento do Azure por meio do portal do Azure, todas as transações ocorrem por HTTPS. Você também pode trabalhar com o Armazenamento do Azure usando a API REST de Armazenamento sobre HTTPS. Para impor o uso de HTTPS quando você chama as APIs REST para acessar objetos em contas de armazenamento, habilite a transferência segura necessária para a conta de armazenamento.
Configuração de dados
A separação entre configuração e código torna-se importante quando você deseja mover suas soluções de integração entre ambientes sem ter que recompilar ou remontar seu código. As informações de configuração geralmente são específicas do ambiente, portanto, você pode definir pontos de extremidade e outros detalhes que precisam ser alterados à medida que você implanta soluções em seu cenário.
BizTalk Server
Executável do serviço BizTalk NT
Esse executável chama um arquivo app.config chamado BTSNTSvc.exe.config. Esse arquivo fornece pares chave-valor para que você possa armazenar informações de configuração de texto não criptografado. No entanto, tome cuidado com este arquivo com base nas seguintes considerações:
Certifique-se de replicar cuidadosamente a configuração em todos os computadores dentro de um grupo do BizTalk.
As alterações de configuração exigem que você reinicie as instâncias do host para obter os valores mais recentes neste arquivo de configuração.
Quaisquer erros de sintaxe introduzidos nesse arquivo de configuração impedem que as instâncias do host sejam iniciadas e resultam em tempo de inatividade.
Ferramenta SSO empresarial
Você também pode usar essa ferramenta como um armazenamento de configuração. Ferramentas comunitárias também estão disponíveis para permitir o gerenciamento de dados usando o Enterprise SSO. Posteriormente, você pode acessar esses dados por meio de ferramentas SDK para recuperar esses dados em tempo de execução.
Componentes de cache personalizados
Esses componentes geralmente são introduzidos para que você possa abordar casos de uso além dos pares chave-valor. Por exemplo, suponha que você queira armazenar dados tabulares em um banco de dados do SQL Server e carregar esses dados na memória quando uma instância de host for iniciada. Essa implementação permite que o BizTalk Server obtenha essas informações em tempo de execução executando código .NET Fx personalizado. Em seguida, você pode acessar esses dados de orquestrações, mapas do BizTalk e componentes de pipeline personalizados.
Base de dados personalizada
Os bancos de dados são uma tecnologia e linguagem bem conhecidas para desenvolvedores e administradores, portanto, um banco de dados personalizado é outra opção comum para armazenar dados de configuração de aplicativos.
Motor de Regras de Negócio (BRE)
Embora não seja um caso de uso principal, o BRE também pode atuar como um armazenamento de configuração. Quer você chame o mecanismo a partir de um componente de orquestração ou pipeline, você pode definir informações específicas do ambiente em políticas BRE e, em seguida, implantar a política correspondente no ambiente relevante. No tempo de execução, um componente de orquestração ou pipeline pode acessar e usar essas informações em funções downstream, como mapas ou em situações de roteamento.
Arquivo de configuração personalizado
Você pode usar arquivos de configuração personalizados (.config) para armazenar dados de configuração do aplicativo, mas essa abordagem não é comum porque você provavelmente precisa manter um local estático e fixo para esses arquivos em todos os ambientes.
Registro do Windows
Você pode usar o registro do Windows como uma opção válida para armazenar os valores de configuração do aplicativo. Este registo é uma base de dados hierárquica central utilizada pelos sistemas operativos Microsoft Windows para armazenar informações necessárias para configurar o sistema para um ou mais utilizadores, aplicações e dispositivos de hardware. O registo contém os seguintes elementos básicos: colmeias, chaves e valores. No entanto, manter valores armazenados no registro pode ser difícil em ambientes grandes com vários registros e a dificuldade de fazer backup de configurações de aplicativos individuais.
Azure Logic Apps
Azure Key Vault
Este serviço armazena e protege chaves criptográficas e outros segredos utilizados por aplicações e serviços na nuvem. Como o gerenciamento seguro de chaves é essencial para proteger dados na nuvem, use o Cofre de Chaves do Azure para criptografar e armazenar chaves e segredos, como senhas.
Configuração da Aplicação Azure
Este serviço gerencia centralmente as configurações do aplicativo e os sinalizadores de recursos. Você pode armazenar configurações para todos os seus aplicativos do Azure em um local universal hospedado. Gerencie configurações de forma eficaz e confiável em tempo real e sem afetar os clientes, evitando reimplantações demoradas. A Configuração de Aplicativo do Azure foi criada para velocidade, escalabilidade e segurança.
Azure Cosmos DB
Este serviço é um banco de dados NoSQL totalmente gerenciado para o desenvolvimento de aplicativos modernos com tempos de resposta de milissegundos de um dígito, além de escalabilidade automática e instantânea que garante velocidade em qualquer escala. Você pode carregar dados de configuração no Azure Cosmos DB e, em seguida, acessar esses dados usando o conector do Azure Cosmos DB nos Aplicativos Lógicos do Azure.
Armazenamento de Tabelas do Azure
Este serviço fornece outra instalação de armazenamento para manter os dados de configuração a um baixo custo. Você pode acessar facilmente esses dados usando o conector de Armazenamento de Tabela do Azure nos Aplicativos Lógicos do Azure. Para obter mais informações, consulte Armazenamento de Tabela do Azure.
Colocação em cache personalizada
Você também pode implementar soluções de cache personalizadas com o Azure Integration Services. As abordagens populares incluem o uso de políticas de cache no Gerenciamento de API do Azure e no Cache do Azure para Redis.
Base de dados personalizada
Os bancos de dados são uma tecnologia e linguagem bem conhecidas para desenvolvedores e administradores, portanto, um banco de dados personalizado é outra opção comum para armazenar dados de configuração de aplicativos.
Processamento de ficheiros grandes
A seção a seguir descreve opções para lidar com arquivos grandes no BizTalk Server e no Azure Integration Services.
BizTalk Server
Para lidar com o processamento de arquivos grandes, o BizTalk Server inclui otimizações com base nos seguintes perfis:
Somente roteamento de mensagens
Se você usar o BizTalk Server somente para rotear mensagens com base nas propriedades da mensagem promovida, as mensagens serão transmitidas para o banco de dados MessageBox usando a interface .NET XmlReader. O BizTalk Server não carrega partes individuais da mensagem na memória, portanto, nesse cenário, erros de falta de memória não são um problema. No entanto, a principal consideração é a quantidade de tempo necessária para escrever mensagens muito grandes (mais de 100 MB) para o banco de dados MessageBox. A equipe de desenvolvimento do BizTalk Server testou com êxito o processamento de mensagens de até 1 GB ao executar apenas o roteamento. Para obter mais informações, consulte Otimizando o desempenho do pipeline.
Transformações de dados com mapas
Quando o BizTalk Server transforma um documento usando um mapa, essa operação potencialmente intensiva de memória passa a mensagem para a classe .NET XslCompiledTransform, que carrega a folha de estilos XSL. Depois que a operação de carregamento for concluída com êxito, vários threads poderão chamar simultaneamente o método Transform. Para obter mais informações, consulte Classe XslCompiledTransform.
O BizTalk Server melhora significativamente o gerenciamento de memória para documentos grandes implementando um limite de tamanho de mensagem configurável para carregar documentos na memória durante as transformações. Por padrão, o limite de tamanho da mensagem é de 1 MB. Para qualquer mensagem com um tamanho abaixo desse limite, o BizTalk Server manipula a mensagem na memória. Para reduzir os requisitos de memória para qualquer mensagem com um tamanho acima desse limite, o BizTalk Server armazena a mensagem em buffer para o sistema de arquivos.
Azure Logic Apps
Existem algumas diferenças fundamentais entre o processamento de arquivos grandes com uma plataforma de middleware local, como o BizTalk Server, e uma oferta de PaaS, como os Aplicativos Lógicos do Azure. Por exemplo, examine cuidadosamente cenários de mensagens grandes para encontrar a solução certa, porque existem maneiras potencialmente diferentes de resolver esse problema em um ambiente de nuvem moderno.
Limites de tamanho de ficheiro
No Azure, existem limites de tamanho de arquivo para garantir experiências consistentes e confiáveis. Para validar seu cenário, verifique a documentação de limites de serviço para Aplicativos Lógicos do Azure. Alguns conectores suportam fragmentação de mensagens para mensagens que excedem o limite de tamanho de mensagem padrão, que varia de acordo com o conector. A fragmentação de mensagens funciona dividindo uma mensagem grande em mensagens menores.
Os Aplicativos Lógicos do Azure não são o único serviço que tem limites de tamanho de mensagem. Por exemplo, o Barramento de Serviço do Azure também tem esses limites. Para obter mais informações sobre como lidar com mensagens grandes no Barramento de Serviço do Azure, consulte Suporte a mensagens grandes.
Padrão de verificação de sinistros
Para evitar limitações de tamanho de arquivo, você pode implementar o padrão de verificação de declaração, que funciona dividindo uma mensagem grande em uma verificação de declaração e uma carga útil. Você envia a verificação de declaração para a plataforma de mensagens e armazena a carga em um serviço externo. Dessa forma, você pode processar mensagens grandes, enquanto protege o barramento de mensagens e o cliente da sobrecarga. Esse padrão também ajuda a reduzir custos, pois o armazenamento geralmente é mais barato do que as unidades de recursos usadas pela plataforma de mensagens.
Azure Data Factory
O Azure Data Factory fornece outra opção para lidar com arquivos grandes. Este serviço é a oferta ELT do Azure para integração de dados sem servidor escalável e transformação de dados com uma experiência visual livre de código para criação intuitiva e monitoramento e gerenciamento de painel único. Você também pode levantar e deslocar pacotes existentes do SQL Server Integration Services (SSIS) para o Azure e executá-los com total compatibilidade no Azure Data Factory. O SSIS Integration Runtime oferece um serviço totalmente gerenciado, para que você não precise se preocupar com o gerenciamento de infraestrutura. Para obter mais informações, consulte Elevar e deslocar cargas de trabalho do SQL Server Integration Services para a nuvem.
Em arquiteturas locais, o SSIS era uma opção popular para gerenciar o carregamento de arquivos grandes em bancos de dados. Como o equivalente na nuvem para essa arquitetura, o Azure Data Factory pode abordar a transformação e a movimentação de grandes conjuntos de dados em várias fontes de dados, como sistemas de arquivos, bancos de dados, SAP, Armazenamento de Blobs do Azure, Azure Data Explorer, Oracle, DB2, Amazon RDS e muito mais. Quando você tiver grandes requisitos de processamento de dados, considere usar o Azure Data Factory como uma opção melhor em relação aos Aplicativos Lógicos do Azure e ao Barramento de Serviço do Azure.
Monitorização e alertas
BizTalk Server
Monitor de Estado de Funcionamento do BizTalk
Essa ferramenta é um snap-in do MMC que você pode usar para monitorar a integridade de seus ambientes do BizTalk Server e executar tarefas de manutenção. Os recursos incluem relatórios do MsgBox Viewer (MBV), tarefas da ferramenta Terminator, notificações por e-mail, coleta de relatórios e integração perfmon .
Console de administração do BizTalk
Essa ferramenta também é um snap-in do MMC para que os administradores descubram falhas, instâncias suspensas, transações que estão sendo repetidas, estado e muito mais. A experiência da ferramenta é muito reativa por natureza, porque você deve atualizar constantemente o console para revisar as informações mais recentes.
-
Uma solução Web externa que fornece controlo total sobre o seu ambiente do BizTalk Server. Essa única ferramenta oferece recursos de operações, monitoramento e análise para o BizTalk Server.
Azure Logic Apps
Nos Aplicativos Lógicos do Azure, as seguintes opções estão disponíveis:
Para fluxos de trabalho de aplicativos lógicos de consumo, você pode instalar a Solução de Gerenciamento de Aplicativos Lógicos (Visualização) no portal do Azure e configurar os logs do Azure Monitor para coletar dados de diagnóstico. Depois de configurar seu aplicativo lógico para enviar esses dados para um espaço de trabalho do Azure Log Analytics, a telemetria flui para onde a Solução de Gerenciamento de Aplicativos Lógicos pode fornecer visualizações de integridade. Para obter mais informações, consulte Configurar logs do Azure Monitor e coletar dados de diagnóstico para Aplicativos Lógicos do Azure. Com o diagnóstico habilitado, você também pode usar o Azure Monitor para enviar alertas com base em diferentes tipos de sinal, como quando um gatilho ou uma execução falha. Para obter mais informações, consulte Monitorar o status da execução, revisar o histórico de gatilhos e configurar alertas para Aplicativos Lógicos do Azure.
Para fluxos de trabalho de aplicativos lógicos padrão, você pode habilitar o suporte ao Application Insights, que fornece visualizações selecionadas como base para monitorar os serviços do Azure. Essas visualizações ajudam você a monitorar fluxos de trabalho padrão com mais eficiência usando painéis projetados especificamente para Aplicativos Lógicos do Azure (Padrão). O escopo do painel abrange os fluxos de trabalho dentro de um aplicativo lógico padrão. O painel é criado em Pastas de Trabalho do Azure e oferece várias visualizações. Você pode facilmente estender e personalizar essas pastas de trabalho para atender a necessidades específicas.
O Serverless 360 é uma solução externa da Kovai que fornece monitoramento e gerenciamento por meio do mapeamento de serviços do Azure, como Aplicativos Lógicos do Azure, Barramento de Serviço do Azure, Gerenciamento de API do Azure e Azure Functions. Você pode reprocessar mensagens usando filas de letras mortas no Barramento de Serviço do Azure, habilitar a autorrecuperação para resolver interrupções intermitentes do serviço e configurar o monitoramento proativo por meio de transações sintéticas.
Você pode configurar regras de monitoramento personalizadas e exibir logs em uma experiência de portal. Você pode enviar notificações por meio de vários canais, como email, Microsoft Teams e ServiceNow. Para determinar visualmente a integridade de suas interfaces, os mapas de serviço estão disponíveis.
Monitorização da atividade empresarial
A seção a seguir descreve opções para monitorar e coletar telemetria para cargas de trabalho no BizTalk Server e no Azure Integration Services.
BizTalk Server
O BizTalk Server inclui um recurso chamado Business Activity Monitoring (BAM) que permite que desenvolvedores e analistas de negócios definam perfis de acompanhamento que podem aplicar a orquestrações. À medida que as mensagens se movem pelas portas de recebimento e envio, os atributos de dados são capturados e armazenados em um banco de dados BAM. A implementação personalizada também está disponível por meio de uma API do .NET Fx.
Azure Logic Apps
Como desenvolvedor ou analista de negócios que trabalha em soluções que integram serviços e sistemas usando vários recursos do Azure, você pode ter dificuldades para visualizar a relação entre os componentes técnicos em sua solução e seu cenário de negócios. Para incluir o contexto empresarial sobre os recursos do Azure na sua solução, pode criar processos empresariais que representem visualmente a lógica empresarial implementada por estes recursos. No Acompanhamento de Processos de Negócios do Azure, um processo de negócios é uma série de estágios que representam as tarefas que fluem através do cenário de negócios do mundo real.
Outra opção é que você pode usar uma solução externa do Kovai chamada Serverless 360. Junto com a plataforma de monitoramento, você pode usar o recurso de monitoramento de atividades de negócios que fornece rastreamento de ponta a ponta para fluxos de processos de negócios em integrações híbridas e nativas da nuvem. Esse recurso inclui um conector gerenciado que os desenvolvedores podem usar para instrumentar o código e capturar dados comerciais importantes. Os administradores podem, posteriormente, criar painéis e compartilhá-los com analistas de negócios.
Monitorização
A seção a seguir descreve opções para rastrear artefatos para monitoramento de desempenho e análise de integridade no BizTalk Server e no Azure Integration Services.
BizTalk Server
Rastreamento de mensagens
Os administradores do BizTalk Server podem usar o controle do corpo da mensagem para indicar quando persistir os corpos de mensagens no armazenamento para fins de solução de problemas e auditoria. O controle de mensagens é uma operação cara do ponto de vista do desempenho e do armazenamento, portanto, use esse recurso seletivamente para evitar problemas de desempenho. Quando você habilita o controle do corpo da mensagem nas portas de recebimento e envio, o BizTalk Server copia os dados para o banco de dados de controle do BizTalk (BizTalkDTADb) usando o trabalho do SQL Server Agent chamado TrackedMessages_Copy_<message-box-name>.
Você pode aplicar o rastreamento a quase todos os artefatos do BizTalk Server, incluindo orquestrações, pipelines, portas de recebimento, portas de envio, esquemas e regras de negócios. Essas opções são habilitadas ou desabilitadas em tempo de execução sem afetar seu código (solução) ou exigir qualquer reinicialização.
Rastreio de Atividade e Saúde (HAT)
Embora a ferramenta HAT tenha sido removida do BizTalk Server a partir da edição de 2009, a funcionalidade ainda existe no Console de Administração do BizTalk. Os administradores podem pesquisar dados por meio da interface Nova Consulta na experiência Visão Geral do Grupo. Você pode personalizar consultas com base em diferentes critérios, incluindo o tipo de evento, nome da porta, URI, nome do esquema e muito mais. Se quiser rever os corpos de mensagens que se moveram através de uma porta de Receção ou Envio, pode aceder a estas informações desde que tenha ativado o controlo ao nível da porta. Para obter mais informações, consulte Integridade e rastreamento de atividades.
Integração com o Application Insights e os Hubs de Eventos do Azure
A partir do BizTalk Server 2016 Feature Pack 1, você pode publicar telemetria no Application Insights no Azure Monitor ou nos Hubs de Eventos do Azure. Essa abordagem evita problemas de capacidade de disco do SQL Server, para que você possa usar armazenamentos de dados elásticos baseados em nuvem, como Application Insights, Log Analytics e histórico de execução em Aplicativos Lógicos do Azure.
Azure Logic Apps
Os Aplicativos Lógicos do Azure também fornecem um histórico de execução avançado para que os desenvolvedores e analistas de suporte possam revisar a telemetria ação por ação, incluindo todas as entradas e saídas processadas. Para ajudar a proteger quaisquer dados confidenciais, você pode habilitar entradas e saídas seguras em ações individuais em fluxos de trabalho. Esse recurso ofusca ou oculta os dados em logs e históricos de execução do fluxo de trabalho para evitar vazamentos.
Além da ofuscação de dados, você pode usar as regras do RBAC do Azure para proteger o acesso aos dados. O RBAC do Azure inclui funções internas específicas para os Aplicativos Lógicos do Azure (Padrão).
Além do RBAC do Azure, você também pode restringir o acesso ao histórico de execução nos Aplicativos Lógicos do Azure por intervalo de endereços IP.
Alojamento
A seção a seguir descreve as opções de hospedagem para o BizTalk Server e o Azure Integration Services.
BizTalk Server
O BizTalk Server 2020 suporta as seguintes plataformas e produtos da Microsoft, começando com a Atualização Cumulativa 6:
- Windows Server 2022, Windows Server 2019 e Windows 11
- Visual Studio 2019 Enterprise e Visual Studio 2019 Professional
- SQL Server 2022, SQL Server 2019
- Office 2019 e Office 2016
Você pode instalar e executar o BizTalk Server em seu próprio hardware, máquina virtual local ou máquinas virtuais do Azure. As máquinas virtuais do Azure oferecem a flexibilidade da virtualização para uma ampla gama de soluções de computação com suporte para BizTalk Server, Windows Server, SQL Server e muito mais. Todas as máquinas virtuais da geração atual incluem balanceamento de carga e dimensionamento automático sem nenhum custo.
Azure Logic Apps
Planos de alojamento
Nos Aplicativos Lógicos do Azure de locatário único, um aplicativo lógico Standard é semelhante a uma função ou aplicativo Web do Azure onde você pode usar um único plano do Serviço de Fluxo de Trabalho para hospedar vários aplicativos lógicos Padrão. Essa semelhança significa que você não precisa implantar todos os seus fluxos de trabalho em um único recurso de aplicativo lógico padrão. Em vez disso, você pode organizar esses fluxos de trabalho em grupos lógicos (aplicativos lógicos) para ajudá-lo a gerenciar melhor outros aspetos da sua solução. Essa abordagem ajuda você a tirar o máximo proveito do seu plano de Serviço de Fluxo de Trabalho e preparar seus aplicativos para o futuro, que você pode implementar para que eles possam ser dimensionados individualmente.
Um aplicativo lógico padrão tem as seguintes camadas de preço: WS1, WS2 e WS3. Funcionalmente, cada camada fornece os mesmos recursos. Seus requisitos de computação e determinação de memória são melhores para seu cenário, por exemplo:
Escalão de preço CPU virtual (vCPU) Memória (GB) WS1 1 3.5 WS2 2 7 WS3 4 14 Para obter mais informações, consulte Níveis de preços no modelo Padrão.
Modelo de implantação híbrida (visualização)
Os Aplicativos Lógicos do Azure oferecem um modelo de implantação híbrido para que você possa implantar e hospedar fluxos de trabalho de aplicativos lógicos padrão em cenários locais, de nuvem privada ou de nuvem pública. Esse modelo oferece os recursos para hospedar soluções de integração em ambientes parcialmente conectados quando você precisa usar processamento local, armazenamento de dados e acesso à rede. Com a opção híbrida, você tem a liberdade e a flexibilidade para escolher o melhor ambiente para seus fluxos de trabalho. Para obter mais informações, consulte Configurar sua própria infraestrutura para aplicativos lógicos padrão usando implantação híbrida (Visualização).
Disponibilidade e redundância
No Azure, as zonas de disponibilidade fornecem resiliência, disponibilidade distribuída e escalabilidade de zona ativa-ativa-ativa. Para aumentar a disponibilidade para as cargas de trabalho do aplicativo lógico, você pode habilitar o suporte à zona de disponibilidade, mas somente quando criar seu aplicativo lógico. Você precisará de pelo menos três zonas de disponibilidade separadas em qualquer região do Azure que ofereça suporte e habilite a redundância de zona. A plataforma de Aplicativos Lógicos do Azure distribui essas zonas e cargas de trabalho de aplicativos lógicos entre essas zonas. Esse recurso é um requisito fundamental para habilitar arquiteturas resilientes e fornecer alta disponibilidade se ocorrerem falhas no datacenter em uma região. Para obter mais informações, consulte Criar soluções para alta disponibilidade usando zonas de disponibilidade.
Ambiente isolado e dedicado
Para aplicativos lógicos padrão, você tem a opção de selecionar um Ambiente do Serviço de Aplicativo (ASE) v3 para seu ambiente de implantação. Com um ASE v3, você obtém um ambiente totalmente isolado e dedicado para executar aplicativos em alta escala com preços previsíveis. Você paga apenas pelo plano ASE App Service, não importa quantos aplicativos lógicos você crie e execute.
Para cenários que exigem serviços de integração adicionais do Azure, consulte a seguinte documentação:
- Camadas de mensagens Premium e Standard do Barramento de Serviço do Azure
- Gerenciamento de API do Azure - Comparação de camadas baseada em recursos
- Azure Data Factory - Planeie a gestão de custos e Compreender os preços do Data Factory através de exemplos
Implementação
BizTalk Server
O empacotamento de implantação nativo no BizTalk Server é baseado em um arquivo do Microsoft Installer (MSI) combinado com um arquivo de configuração de ambiente, ou associações. Esses dois arquivos criam uma separação entre a instalação de componentes, que são implantados nos seguintes repositórios do BizTalk Server e define configurações no nível de porta e pipeline, incluindo ponto de extremidade, segredos, configuração de pipeline e outros.
- DB de gestão
- Pastas locais do BizTalk Server
- Cache de assembly global do .NET
Embora esse processo possa ser eficaz, você também precisa gerenciar cada configuração de ambiente individual separadamente do código. O projeto de código aberto do BizTalk Deployment Framework (BTDF) oferece uma solução para esse problema. Com essa ferramenta, você pode manter a configuração do ambiente como parte de sua solução do BizTalk Server usando um arquivo de vinculação tokenizado, que você cria em tempo de design, e uma matriz de token, que você cria como um arquivo do Excel, para cada ambiente.
Em seguida, o processo de compilação cria um arquivo MSI unificado e versionado. Esse arquivo oferece suporte à implantação de componentes e à configuração do ambiente a partir do mesmo pacote, o que lhe dá um melhor controle sobre a versão da solução que você deseja implementar em todos os ambientes.
O suporte para um pacote BTDF em um pipeline de integração contínua (CI/CD) está disponível no BizTalk Server 2020, que inclui essa funcionalidade introduzida com os Feature Packs do BizTalk Server 2016. Você pode usar essa funcionalidade e a plataforma Azure DevOps para simplificar a implantação automática de soluções do BizTalk Server em todos os ambientes.
Azure Logic Apps
Ao implantar um recurso de Aplicativos Lógicos do Azure ou qualquer outro componente ou solução do Azure Integration Services no Azure, você deve gerenciar os seguintes itens:
Recursos do Azure que atuam como contêineres ou a infraestrutura para as soluções que você deseja implantar, por exemplo, o recurso de aplicativo lógico padrão, instância de Gerenciamento de API, namespace do Service Bus ou tópico Grade de Eventos
A lógica real implementada por cada componente, como fluxos de trabalho, APIs, filas e assinaturas
A configuração específica do ambiente associada a cada componente, por exemplo, permissões, segredos, alertas e assim por diante
Ao manter a definição de infraestrutura separada do código, você pode tratar a definição de infraestrutura como apenas mais uma parte do código que você pode versionar, armazenar com segurança em um repositório de controle do código-fonte e acionar uma implantação quando a definição for alterada. Essa prática, comumente conhecida como Infraestrutura como Código (IaC), melhora a qualidade do ambiente porque você pode criar versões para cada ambiente e controlar as alterações de volta ao controle do código-fonte.
Os Aplicativos Lógicos do Azure dão suporte ao IaC fornecendo a capacidade de criar recursos de infraestrutura usando modelos de Gerenciamento de Recursos do Azure. Embora os modelos ARM possam parecer complexos de entender e implementar como uma solução unificada, você pode usar ferramentas de abstração, como Bicep, Terraform ou Pulumi, que fornecem uma experiência semelhante a um código para criar sua definição de infraestrutura. Embora essas ferramentas forneçam camadas de abstração sobre modelos ARM, as ferramentas geram modelos ARM e podem implantar esses modelos para você.
Com sua infraestrutura instalada, você pode implantar a lógica que implementa seus fluxos de trabalho de ponta a ponta. Como o Azure Integration Services oferece uma coleção de ferramentas para você implementar seus fluxos de trabalho de integração, você deve implantar cada componente. Para soluções criadas com o Azure Integration Services, os pipelines de CI/CD geralmente se baseiam na implantação de uma orquestração de componentes. Os engenheiros de DevOps podem usar ações internas que abstraem atividades de implantação ou ações genéricas que executam comandos da CLI ou scripts de automação, como PowerShell e Bash. Na maioria dos casos, os engenheiros personalizam pipelines com base nas necessidades do aplicativo, revisam as orientações da documentação oficial e usam repositórios de amostras como ponto de partida.
O processo para preparar cada componente para implantação geralmente leva as seguintes etapas em consideração:
Fase de integração contínua
Obtenha a versão mais recente do código-fonte.
Prepare o código com a configuração específica do ambiente.
Os detalhes para esta etapa dependem do suporte de cada tecnologia para injeção externa de variáveis de ambiente. A premissa básica é que as informações de configuração baseadas em ambiente, como cadeias de conexão e referências a recursos externos, são abstraídas para fazer referência a um repositório de configurações de aplicativo. Portanto, nesse cenário, você armazenaria referências que podem existir como texto não criptografado diretamente no repositório de configurações do aplicativo, mas armazenaria valores confidenciais, como segredos, como ponteiros de referência para entradas em um repositório de segredos, como um cofre de chaves do Azure.
Os Aplicativos Lógicos do Azure tornam essa abordagem possível para um recurso de aplicativo lógico padrão dando suporte a referências ao repositório de configurações do aplicativo, que você pode mapear pares nome-valor para entradas em seu cofre de chaves.
Empacote o código para implantação em vários ambientes.
Fase de implantação contínua
Implante o código empacotado no ambiente de destino.
Atualize o repositório de configurações do aplicativo com os valores de ambiente corretos, como texto não criptografado ou referências a entradas no cofre de chaves.
Atualize todas as permissões necessárias que dependem do código.
Prepare seu aplicativo para execução, se necessário.
Correspondência de recursos
A tabela e o diagrama a seguir mostram aproximadamente como recursos, artefatos, recursos e capacidades se comparam e correspondem entre o BizTalk Server, os Aplicativos Lógicos do Azure e os Serviços de Integração do Azure. Embora os Aplicativos Lógicos do Azure sejam uma plataforma fundamental para cargas de trabalho de integração, certifique-se de considerar todos os recursos disponíveis no Azure Integration Services e no Azure como um todo.
Funcionalidade | BizTalk Server | Azure |
---|---|---|
Orquestrações | - Orquestração do BizTalk Server - Código C# |
- Fluxo de trabalho dos Aplicativos Lógicos do Azure - Modelos de fluxo de trabalho dos Aplicativos Lógicos do Azure - Aplicativo de função Azure Functions |
Pipelines | - Pipelines do BizTalk Server - Componentes de pipeline |
- Fluxos de trabalho dos Aplicativos Lógicos do Azure (como pipelines) - Gerenciamento de API do Azure (como pipelines) - Aplicativo de função Azure Functions - Aplicativo de API do Azure |
Encaminhamento de mensagens | - Caixa de Mensagens - Promoções de Imóveis - Filtros |
- Filas e tópicos do Barramento de Serviço do Azure (cabeçalhos de mensagens, propriedades de mensagens e assinaturas) - Azure Event Grid ou Azure API Management - SQL Server ou Cache do Azure para Redis |
Conectividade de aplicativos | - BizTalk Server pronto para uso e adaptadores personalizados - Serviços de Informação Internet (IIS) e Gestão de API do Azure (capacidades híbridas) |
- Conectores de Aplicativos Lógicos do Azure - Azure API Management (como conectores) - Aplicativo de função Azure Functions - Aplicativo de API do Azure |
Referências cruzadas | xref_ * tabelas no banco de dados do BizTalk Management (BizTalkMgmtDb) | - Azure Functions - SQL Server - Personalizado |
Esquemas (XSD) | - Esquemas do BizTalk Server - XML, JSON e esquemas de arquivo simples |
- Aplicativos Lógicos do Azure (Padrão) - Conta de integração do Azure - Conta de armazenamento do Azure - Aplicativo de função Azure Functions - Aplicativo de API do Azure |
Mapas | - Mapeador BizTalk - Mapas XSLT - Gerenciamento de API do Azure (recursos híbridos) |
- Azure Logic Apps (Padrão) - mapas XSLT, modelos Liquid - Conta de integração do Azure (mapas XSLT, modelos Liquid) - Conta de armazenamento do Azure - Aplicativo de função Azure Functions - Aplicativo de API do Azure - Ferramenta Mapeador de Dados (extensão Azure Logic Apps Standard para Visual Studio Code) |
Regras de negócio | Mecanismo de regras de negócios do BizTalk Server | Mecanismo de Regras de Aplicativos Lógicos do Azure |
Monitorização da atividade empresarial | Monitoramento de atividades comerciais do BizTalk Server | Acompanhamento de Processos de Negócios do Azure |
EDI | - Recursos prontos para uso do BizTalk Server - Partes, parceiros, acordos, AS2, X12, EDIFACT |
Aplicativos Lógicos do Azure e conta de integração do Azure (parceiros, contratos, AS2, X12, EDIFACT) |
HL7, RosettaNet e SWIFT | Aceleradores do BizTalk Server para HL7, RosettaNet e SWIFT | - Azure Logic Apps, conta de integração do Azure, conectores RosettaNet e SWIFT - Azure API Management para FHIR (HL7) - Azure Blueprint, que permite a conformidade com o CSP SWIFT no Azure |
Segredos | Logon único corporativo (SSO) | - Azure Key Vault - SQL Server - Configuração da aplicação |
Segurança e governação | - Logon único corporativo (SSO) - Aplicações de afiliados SSO - Diretório Ativo - Certificados de assinatura - Autenticação de Segurança do IIS - Segurança da rede |
- ID do Microsoft Entra - Segurança de Rede do Azure - Controle de acesso baseado em função do Azure (Azure RBAC) - Reivindicações, fichas - Políticas de Acesso Partilhado |
Configuração de dados | - Arquivos de configuração - Configuração da aplicação SSO empresarial - Componentes de cache personalizados - Base de dados personalizada - Motor de Regras de Negócio - Registo do Windows |
- Azure Key Vault - Configuração do Aplicativo do Azure - Azure Cosmos DB - Armazenamento de Tabela do Azure - Configuração de Aplicativos Lógicos do Azure (Padrão) - Configuração do Azure Functions - Azure API Management nomeou valores e back-ends - SQL Server - Cache personalizado - Base de dados personalizada |
Implementação | - Arquivo de vinculação do BizTalk Server | - Azure Pipelines - Scripts bíceps - Terraforma |
Monitorização | - Recursos de rastreamento do BizTalk Server (portas de recebimento, portas de envio, pipelines, orquestrações) - Rastreamento do IIS - Análise interna do Azure API Management (recursos híbridos) |
- Histórico de execução e propriedades controladas dos Aplicativos Lógicos do Azure - Conta de Armazenamento do Azure - Azure Monitor (Application Insights) - Análise integrada do Azure API Management - Solução personalizada, por exemplo, Azure Event Hubs mais Azure Functions mais SQL Server mais Azure Data Explorer |
Monitorização | - Console de Administração do BizTalk - Monitor de integridade do BizTalk |
Azure Monitor (Application Insights, Log Analytics) |
Operações | - Console de Administração do BizTalk Server - Azure Pipelines - MSI, PowerShell - Estrutura de implantação do BizTalk |
- Portal do Azure - Azure Monitor - Modelos do Azure Resource Manager - Azure Pipelines - PowerShell, CLI, Bíceps |
Para se manter atualizado sobre os investimentos mais recentes, inscreva-se no Blog Integrações no Azure - Comunidade Técnica.
Próximos passos
Você aprendeu mais sobre como os Aplicativos Lógicos do Azure se comparam ao BizTalk Server. Em seguida, saiba como escolher os melhores recursos do Azure para seus cenários. Ou pule para revisar as abordagens e recursos sugeridos, considerações de planejamento e práticas recomendadas para sua migração.