Condividi tramite


Perché eseguire la migrazione da BizTalk Server ad Azure Integration Services?

Questa guida offre una panoramica dei motivi e dei vantaggi, dei confronti dei prodotti, delle funzionalità e di altre informazioni che consentono di avviare la migrazione da BizTalk Server locale a Azure Integration Services basato sul cloud. Seguendo questa guida, sono disponibili altre guide che illustrano come scegliere i servizi più adatti allo scenario insieme alle strategie di migrazione, alle considerazioni sulla pianificazione e alle procedure consigliate per ottenere risultati riusciti.

Motivi e vantaggi

Eseguendo la migrazione dei carichi di lavoro di integrazione ad Azure Integration Services, è possibile sfruttare i vantaggi principali seguenti:

Vantaggio Descrizione
Modern Integration Platform as a Service (iPaaS) Azure Integration Services offre funzionalità non ancora concepite quando BizTalk Server è stato originariamente compilato, ad esempio:

- La possibilità di creare e gestire LE API REST
- Infrastruttura cloud scalabile
- Schemi di autenticazione moderni, più sicuri e facili da implementare
- Strumenti di sviluppo semplificati, incluse molte esperienze basate su Web browser
- Aggiornamenti automatici della piattaforma e integrazione con altri servizi nativi del cloud
prezzi a consumo Con le piattaforme middleware tradizionali, è spesso necessario effettuare investimenti di capitale significativi nell'acquisizione di licenze e infrastrutture, forzando la creazione di "picco" e la creazione di inefficienze. Azure Integration Services offre più modelli di prezzi che in genere consentono di pagare per ciò che si usa. Sebbene alcuni modelli di determinazione prezzi consentano e forniscano l'accesso a funzionalità più avanzate, si ha la flessibilità di pagare per ciò che si utilizza.
Barriera inferiore all'ingresso BizTalk Server è un broker middleware molto in grado di supportare, ma richiede molto tempo per imparare e ottenere conoscenze. Azure Integration Services riduce il tempo necessario per avviare, apprendere, compilare e distribuire soluzioni. Ad esempio, App per la logica di Azure include una finestra di progettazione visiva che offre un'esperienza senza codice o con poco codice per la creazione di flussi di lavoro dichiarativi.
Connettività SaaS Con le API REST che diventano standard per l'integrazione delle applicazioni, più aziende SaaS hanno adottato questo approccio per lo scambio di dati. Microsoft ha creato un ecosistema di connettori esteso e in continua crescita con centinaia di API per lavorare con Microsoft e non servizi Microsoft, sistemi e protocolli. In App per la logica di Azure è possibile usare progettazione flussi di lavoro per selezionare le operazioni da questi connettori, creare ed autenticare facilmente le connessioni e configurare le operazioni da usare. Questa funzionalità accelera lo sviluppo e offre maggiore coerenza quando si autentica l'accesso a questi servizi usando OAuth2.
Distribuzioni geografiche multiple Azure offre attualmente più di 60 aree annunciate, più di qualsiasi altro provider di servizi cloud, in modo da poter scegliere facilmente i data center e le aree più adatti per l'utente e i clienti. Questa copertura consente di distribuire soluzioni in modo coerente in molte aree geografiche e offre opportunità sia dal punto di vista della scalabilità che della ridondanza.

Che cos'è Azure Integration Services?

Azure Integration Services include i blocchi predefiniti basati sul cloud, serverless, scalabili e gestiti da Microsoft seguenti per creare soluzioni di integrazione complete ed eseguire la migrazione di soluzioni BizTalk Server esistenti:

Servizioo Descrizione
App per la logica di Azure Creare ed eseguire flussi di lavoro automatizzati di app per la logica che integrano app, dati, servizi e sistemi. È possibile sviluppare rapidamente soluzioni di integrazione altamente scalabili per gli scenari aziendali e business-to-business (B2B). Usare la finestra di progettazione del flusso di lavoro visivo per abilitare microservizi, orchestrazioni API e integrazioni line-of-business. Per aumentare la scalabilità e la portabilità automatizzando i flussi di lavoro critici per l'azienda, distribuire ed eseguire ovunque Kubernetes possa essere eseguito.

È possibile creare risorse per l'app per la logica a consumo o Standard. Un'app per la logica a consumo include un solo flusso di lavoro con stato eseguito in App per la logica di Azure multi-tenant. Un'app per la logica Standard può includere più flussi di lavoro con stato o senza stato eseguiti in App per la logica di Azure a tenant singolo, un ambiente del servizio app v3 o App per la logica abilitate per Azure Arc.

Per posizionare App per la logica di Azure all'interno di Azure Integration Services, questa guida è incentrata sulle app per la logica Standard, che offrono il miglior equilibrio tra funzionalità aziendali, costi e agilità. Per altre informazioni, vedere App per la logica di Azure.
Funzioni di Azure Scrivere meno codice, mantenere meno infrastruttura e risparmiare sui costi per l'esecuzione delle applicazioni. Senza dover distribuire e gestire i server, l'infrastruttura cloud fornisce tutte le risorse aggiornate necessarie per mantenere le applicazioni in esecuzione. Per altre informazioni, vedere Funzioni di Azure.
Azure Data Factory Integrare visivamente tutte le origini dati usando più di 90 connettori predefiniti senza manutenzione senza costi aggiuntivi. Costruisci facilmente estrai, trasforma e carica (ETL) e Extract, Load e Transform (ELT) elabora senza codice in un ambiente intuitivo oppure puoi scrivere codice personalizzato. Per sbloccare le informazioni aziendali, distribuire i dati integrati ad Azure Synapse Analytics. Per altre informazioni, vedere Azure Data Factory.
Bus di servizio di Azure Trasferire i dati tra applicazioni e servizi, anche quando sono offline, come messaggi che usano questo broker di messaggi enterprise altamente affidabile. È possibile ottenere maggiore flessibilità quando si negozia i messaggi tra client e server con messaggistica FIFO (First-In, First-In) strutturata, funzionalità di pubblicazione-sottoscrizione e operazioni asincrone. Per altre informazioni, vedere bus di servizio di Azure.
Azure Event Grid Integrare le applicazioni usando eventi recapitati da un broker eventi alle destinazioni del sottoscrittore, ad esempio servizi di Azure, altre applicazioni o qualsiasi endpoint in cui Griglia di eventi ha accesso alla rete. Le origini eventi possono includere altre applicazioni, servizi SaaS e servizi di Azure. Per altre informazioni, vedere Griglia di eventi di Azure.
Gestione API di Azure Distribuire i gateway API side-by-side e ottimizzare il flusso del traffico con le API ospitate in Azure, in altri cloud e in locale. Soddisfare i requisiti di sicurezza e conformità, mentre si gode di un'esperienza di gestione unificata e di un'osservabilità completa in tutte le API interne ed esterne. Per altre informazioni, vedere Azure Gestione API.

Diagram showing Azure Integration Services member services.

Servizi di Azure complementari

Oltre ai servizi descritti in precedenza, Microsoft offre anche i servizi complementari seguenti che forniscono funzionalità sottostanti per Azure Integration Services e che probabilmente verranno usati in un progetto di migrazione:

Servizioo Descrizione
Archiviazione di Azure Offre risorse di archiviazione a disponibilità elevata, scalabili, durevoli, sicure e moderne per vari oggetti dati nel cloud. È possibile accedere a questi oggetti dati da qualsiasi parte del mondo tramite HTTP o HTTPS usando un'API REST.

Azure Integration Services usa queste funzionalità per archiviare in modo sicuro i dati di configurazione e telemetria durante il flusso delle transazioni attraverso la piattaforma. Per altre informazioni, vedere Archiviazione di Azure.
Controllo degli accessi in base al ruolo di Azure Gestire l'accesso alle risorse cloud, una funzione fondamentale per qualsiasi organizzazione che usa il cloud. Il controllo degli accessi in base al ruolo di Azure è un sistema di autorizzazione basato su Azure Resource Manager che offre una gestione degli accessi con granularità fine alle risorse di Azure. È possibile gestire chi può accedere alle risorse di Azure, le operazioni che possono eseguire con tali risorse e quali aree possono accedere. Per altre informazioni, vedere Controllo degli accessi in base al ruolo di Azure.
Insieme di credenziali chiave di Azure Offre funzionalità che consentono di risolvere i problemi relativi alla gestione dei segreti, alla gestione delle chiavi e alla gestione dei certificati.

Azure Integration Services offre l'integrazione con Azure Key Vault tramite le impostazioni di configurazione dell'applicazione e tramite un connettore. Questa funzionalità consente di archiviare segreti, credenziali, chiavi e certificati in modo sicuro ma pratico. Per altre informazioni, vedere Azure Key Vault.
Criteri di Azure Offre funzionalità che consentono di applicare gli standard dell'organizzazione e di valutare la conformità in modo scalabile. Tramite il dashboard di conformità si ottiene una visualizzazione aggregata in modo da poter valutare lo stato complessivo dell'ambiente con la possibilità di eseguire il drill-down fino alla granularità per risorsa e per criterio.

Azure Integration Services si integra con Criteri di Azure in modo da poter implementare in modo efficiente la governance diffusa. Per altre informazioni, vedere Criteri di Azure.
Rete di Azure Offre un'ampia gamma di funzionalità di rete, tra cui connettività, servizi di protezione delle applicazioni, servizi di distribuzione delle applicazioni e monitoraggio della rete.

Azure Integration Services usa queste funzionalità per fornire connettività tra i servizi usando reti virtuali ed endpoint privati. Per altre informazioni, vedere Rete di Azure.
Hub eventi di Azure Creare pipeline di dati dinamiche e rispondere immediatamente alle sfide aziendali trasmettendo milioni di eventi al secondo da qualsiasi origine con questo servizio di inserimento dati completamente gestito e in tempo reale semplice, attendibile e scalabile.

Gestione API esegue la registrazione personalizzata usando Hub eventi, una delle soluzioni migliori quando si implementa una soluzione di rilevamento disaccoppiata in Azure. Per altre informazioni, vedere Hub eventi di Azure.
database SQL di Azure A un certo punto, potrebbe essere necessario creare strategie di registrazione personalizzate o configurazioni personalizzate per supportare le soluzioni di integrazione. Anche se SQL Server viene comunemente usato in locale per questo scopo, database SQL di Azure potrebbe offrire una soluzione praticabile durante la migrazione di database SQL Server locali al cloud. Per altre informazioni, vedere database SQL di Azure.
Configurazione app di Azure Gestire centralmente le impostazioni dell'applicazione e i flag di funzionalità. I programmi moderni, in particolare quelli in esecuzione in un cloud, in genere hanno molti componenti distribuiti per natura. La distribuzione delle impostazioni di configurazione tra questi componenti può causare errori difficili da risolvere durante la distribuzione delle applicazioni. Con Configurazione app, è possibile archiviare tutte le impostazioni per l'applicazione e proteggere gli accessi in un'unica posizione. Per altre informazioni, vedere configurazione app Azure.
Monitoraggio di Azure Application Insights, che fa parte di Monitoraggio di Azure, fornisce la gestione delle prestazioni delle applicazioni e il monitoraggio per le app attive. Archiviare i dati di telemetria dell'applicazione e monitorare l'integrità complessiva della piattaforma di integrazione. È anche possibile impostare soglie e ricevere avvisi quando le prestazioni superano le soglie configurate. Per altre informazioni, consultare Application Insights.
Azure Automation Automatizzare le attività di gestione di Azure e orchestrare le azioni tra sistemi esterni all'interno di Azure. Basato sul flusso di lavoro di PowerShell, è possibile usare molte funzionalità di questo linguaggio. Per altre informazioni, vedere Automazione di Azure.

Esperienze di sviluppo supportate

Questa sezione descrive gli strumenti di sviluppo supportati da BizTalk Server e Azure Integration Services:

Offerta Prodotto o servizio con strumenti supportati
BizTalk Server Ogni versione di BizTalk Server supporta una versione specifica di Visual Studio.

Ad esempio, BizTalk Server 2020 supporta Visual Studio 2019 Enterprise o Professional. Tuttavia, Visual Studio Community Edition non è supportato.
Servizi di integrazione Azure - App per la logica di Azure (Standard): portale di Azure e Visual Studio Code

- App per la logica di Azure (consumo): portale di Azure, Visual Studio Code e Visual Studio 2019, 2017 o 2015

- Funzioni di Azure: portale di Azure, Visual Studio Code e Visual Studio 2022

- Azure Gestione API: portale di Azure e Visual Studio Code

- bus di servizio di Azure: portale di Azure e bus di servizio Explorer

- Azure Data Factory: portale di Azure e Visual Studio 2015 o 2013

BizTalk Server e Azure Integration Services

Per confrontare BizTalk Server con Azure Integration Services e illustrare come eseguire la migrazione, è prima di tutto riepilogare le operazioni di BizTalk Server. Originariamente disponibile nel 2000, BizTalk Server è una piattaforma locale, stabile e middleware che connette vari sistemi tramite adapter. Questa piattaforma funziona come broker tra aziende, sistemi o applicazioni ed è ora una piattaforma di integrazione ben consolidata. Per semplificare la sfida di combinare sistemi diversi sviluppati in linguaggi diversi e che possono essere connessi usando protocolli e formati diversi, BizTalk Server offre le funzionalità principali seguenti:

  • Orchestrazione (flusso aziendale)

    Offre la possibilità di creare ed eseguire orchestrazioni o processi aziendali definiti graficamente.

  • Messaggistica

    Offre la possibilità di comunicare con un'ampia gamma di applicazioni software. Gli adapter consentono al componente di messaggistica di BizTalk Server di interagire con diversi protocolli e formati di dati.

Il motore BizTalk Server include i componenti seguenti:

Componente Descrizione
Motore regole business (BRE) Valuta set complessi di regole.
Enterprise Single Sign-On (SSO) Offre la possibilità di eseguire il mapping delle informazioni di autenticazione tra sistemi Windows e non Windows.
Monitoraggio attività di business (BAM) Consente ai information worker di monitorare un processo aziendale in esecuzione.
Hub di gruppo Consente al personale di supporto di gestire il motore e le orchestrazioni eseguite.

Come funziona BizTalk Server?

BizTalk Server usa un'architettura del motore di messaggistica publish-subscribe con il database MessageBox a cuore. MessageBox è responsabile dell'archiviazione di messaggi, proprietà dei messaggi, sottoscrizioni, stati di orchestrazione, dati di rilevamento e altre informazioni.

Quando BizTalk Server riceve un messaggio, il server passa ed elabora il messaggio tramite una pipeline. Questo passaggio normalizza e pubblica il messaggio in MessageBox. BizTalk Server valuta quindi eventuali sottoscrizioni esistenti e determina il destinatario previsto del messaggio, in base alle proprietà del contesto del messaggio. Infine, BizTalk Server instrada il messaggio al destinatario desiderato, in base a sottoscrizioni o filtri. Questo destinatario è un'orchestrazione o una porta di trasmissione, che è una destinazione in cui BizTalk Server invia messaggi o origine da cui BizTalk Server può ricevere messaggi. BizTalk Server trasmette i messaggi tramite una porta di trasmissione passandoli tramite una pipeline di invio. La pipeline di invio serializza i messaggi nel formato nativo previsto dal ricevitore prima di inviare i messaggi tramite un adattatore.

Il database MessageBox include i componenti seguenti:

  • Agente di messaggistica

    BizTalk Server interagisce con MessageBox usando questo agente, che fornisce interfacce per la pubblicazione di messaggi, la sottoscrizione ai messaggi, il recupero di messaggi e altro ancora.

  • Uno o più database di SQL Server

    Questi database forniscono l'archivio di persistenza per messaggi, parti dei messaggi, proprietà dei messaggi, sottoscrizioni, stato di orchestrazione, dati di rilevamento, code host per il routing e altro ancora.

L'immagine seguente mostra il funzionamento del motore di messaggistica di BizTalk Server:

Diagram showing BizTalk Server Messaging Engine.

Dopo che una porta di ricezione riceve un messaggio, MessageBox archivia il messaggio per l'elaborazione da parte dei processi aziendali o per il routing a qualsiasi porta di trasmissione con sottoscrizioni a messaggi specifici.

Diagram showing process for receiving and storing messages in the MessageBox database for BizTalk Server.

Per altre informazioni, vedere Architettura di pubblicazione-sottoscrizione più avanti in questa guida.

Processi aziendali

Questa sezione descrive le opzioni per la progettazione e la creazione di processi aziendali che è possibile eseguire in BizTalk Server e In Azure Integration Services.

BizTalk Server

In BizTalk Server le orchestrazioni sono processi aziendali eseguibili che possono sottoscrivere (ricevere) messaggi e pubblicare (inviare) messaggi tramite il database MessageBox. Le orchestrazioni possono costruire nuovi messaggi e possono ricevere messaggi usando la sottoscrizione e l'infrastruttura di routing. Quando MessageBox riempie le sottoscrizioni per le orchestrazioni, viene attivata una nuova istanza (esecuzione dell'orchestrazione) e MessageBox recapita il messaggio. Se necessario, l'istanza viene riattivata e il messaggio viene quindi recapitato. Quando i messaggi vengono inviati da un'orchestrazione, vengono pubblicati in MessageBox nello stesso modo in cui un messaggio in arrivo in una posizione di ricezione con le proprietà appropriate aggiunte al database per il routing.

Per abilitare la messaggistica di pubblicazione-sottoscrizione, le orchestrazioni usano associazioni che consentono di creare sottoscrizioni. Le porte di orchestrazione sono porte logiche che descrivono un'interazione. Per recapitare messaggi, è necessario associare queste porte logiche a una porta fisica, ma questo processo di associazione non è altro che configurare le sottoscrizioni per il routing dei messaggi.

BizTalk Server offre i vantaggi seguenti:

  • Incentrato sulla finestra di progettazione (dichiarativo)

    Progettare processi complessi usando strumenti di progettazione facili da comprendere per implementare modelli e flussi di lavoro che altrimenti potrebbero essere difficili da implementare nel codice.

  • Astrazione con sistemi finali

    Processi di progettazione incentrati sui messaggi, non sul sistema finale. Durante lo sviluppo di soluzioni, ad esempio, non è necessario preoccuparsi se si userà un adattatore FILE o un adattatore FTP. Al contrario, ci si concentra sul tipo di comunicazione, sia in un modo che in una risposta di richiesta e sul tipo di messaggio che si desidera elaborare. Successivamente, quando si distribuiscono le soluzioni, è possibile specificare l'adattatore e i sistemi finali.

Servizi di integrazione Azure

In App per la logica di Azure è possibile creare processi aziendali eseguibili e applicazioni come flussi di lavoro di app per la logica usando un modo "blocco predefinito" di programmazione con una finestra di progettazione visiva e operazioni predefinite da centinaia di connettori, che richiedono codice minimo. Un flusso di lavoro dell'app per la logica inizia con un'operazione di trigger seguita da una o più operazioni di azione con ogni operazione che funziona come passaggio logico nel processo di implementazione del flusso di lavoro. Il flusso di lavoro può usare azioni per chiamare software, servizi e sistemi esterni. Alcune azioni eseguono attività di programmazione, ad esempio condizionali (istruzioni if), cicli, operazioni di dati, gestione delle variabili e altro ancora.

App per la logica di Azure offre i vantaggi seguenti:

  • Incentrato sulla finestra di progettazione (dichiarativo)

    Progettare processi complessi usando strumenti di progettazione facili da comprendere per implementare modelli e flussi di lavoro che altrimenti potrebbero essere difficili da implementare nel codice.

  • Flessibile e scalabile

    App per la logica di Azure è un servizio di elaborazione basato sul cloud, serverless, altamente scalabile e scalabile, che si adatta automaticamente alle esigenze aziendali in continua evoluzione.

  • Connessione a qualsiasi elemento

    Selezionare da una raccolta in continua espansione con centinaia di connettori predefiniti per creare i flussi di lavoro. Un connettore fornisce operazioni che è possibile usare come procedura nei flussi di lavoro. È possibile creare soluzioni di integrazione per la maggior parte dei servizi e dei sistemi di Microsoft e partner, tra cui BizTalk Server, Salesforce, Office 365, database SQL, la maggior parte dei servizi di Azure, ad esempio Funzioni di Azure, Archiviazione di Azure, bus di servizio di Azuree molte altre più applicazioni o sistemi locali, mainframe, SaaS e API. Se non esiste alcun connettore predefinito per la risorsa a cui si vuole accedere, è possibile usare l'operazione HTTP generica per comunicare con il servizio oppure creare un connettore personalizzato.

Componenti riutilizzabili

Le piattaforme di integrazione offrono modi per risolvere i problemi in modo coerente e unificato, che spesso è possibile ottenere tramite componenti riutilizzabili. Questa sezione descrive come riutilizzare i componenti in BizTalk Server e Azure Integration Services.

BizTalk Server

  • Orchestrazioni

    È possibile creare e condividere logica di business comune come orchestrazioni in flussi di lavoro diversi, internamente all'interno della stessa applicazione o con più applicazioni. È possibile attivare orchestrazioni usando il meccanismo di pubblicazione-sottoscrizione nativo in BizTalk Server (in modo disaccoppiato) o usando le forme di orchestrazione denominate Call Orchestration per chiamate sincrone o Avvia orchestrazione per le chiamate asincrone.

  • Adapter

    Gli adapter sono componenti software che forniscono connettività tra BizTalk Server e partner commerciali usando protocolli di dati e formati di documento comunemente riconosciuti. Questi componenti semplificano l'invio e la ricezione di messaggi usando un meccanismo di recapito conforme a uno standard comunemente riconosciuto, ad esempio SMTP, FTP, HTTP e altro ancora. Gli adattatori fanno parte della piattaforma principale, quindi tutte le applicazioni esistenti le condividono. È anche possibile estendere questo livello creando un adattatore personalizzato, nativo o basato su Windows Communication Foundation (WCF), usando BizTalk Adapter Framework.

  • Schemi

    Gli schemi XSD (XML Schema Definition) consentono la messaggistica basata sul contratto in BizTalk Server. Per evitare di creare schemi ridondanti, è possibile fare riferimento agli schemi dagli assembly compilati. Per usare gli schemi condivisi, è necessario aggiungere un riferimento all'assembly condiviso dal progetto BizTalk.

    Anche se questo passaggio potrebbe sembrare semplice, la gestione delle modifiche agli assembly condivisi potrebbe diventare difficile a causa del concatenamento delle dipendenze. Se l'assembly condiviso richiede un aggiornamento, è necessario rimuovere tutti i progetti che fanno riferimento all'assembly condiviso da BizTalk Server per installare l'aggiornamento. Tuttavia, per evitare questi vincoli, è possibile implementare il controllo delle versioni degli assembly in cui si distribuisce una nuova versione per uno schema o schemi condivisi senza interrompere le soluzioni esistenti.

  • Mappe e functoid personalizzati

    Mappe abilitare la conversione o la trasformazione di messaggi XML in BizTalk Server. È possibile condividere le mappe, ma come gli schemi condivisi, si applicano cautela simili alle mappe condivise. A causa del concatenamento delle dipendenze, procedere con attenzione e assicurarsi di avere un ciclo di vita di sviluppo software maturo per gestire le modifiche.

    Nelle mappe i functoid eseguono calcoli usando formule predefinite e valori specifici denominati argomenti. BizTalk Server offre molti functoid per supportare una gamma di operazioni diverse. I functoid personalizzati consentono di estendere l'intervallo di operazioni disponibili nell'ambiente di mapping di BizTalk Server.

    Se si inizia a creare molte mappe, ci si rende conto che si sta implementando ripetutamente una logica simile. Di conseguenza, ci si troverà a dedicare tempo a gestire più frammenti di codice equivalenti che in genere si copiano e incollano in diverse posizioni all'interno di una mappa o tra mappe. Provare a trasformare tali frammenti di codice in un functoid personalizzato. In questo modo, crei il functoid una sola volta, ma puoi riutilizzare il functoid in tutte le mappe desiderate e aggiornare il functoid in un solo posto. Ogni functoid personalizzato viene distribuito come assembly .NET usando classi derivate dallo spazio dei nomi Microsoft.BizTalk.BaseFunctoids . Un singolo assembly può contenere più functoid personalizzati.

  • Assembly Fx .NET

    È possibile condividere questi assembly tra progetti BizTalk Server. Questi assembly sono più facili da gestire dal punto di vista delle dipendenze. A condizione che non esistano modifiche di rilievo, un aggiornamento a un assembly .NET Fx richiede l'aggiornamento della DLL nella Global Assembly Cache (GAC), che rende automaticamente disponibili le modifiche ad altri assembly. Se esistono modifiche di rilievo, è necessario aggiornare anche il progetto dipendente in modo da adattare le modifiche nell'assembly Fx .NET.

  • Pipeline personalizzate e componenti della pipeline

    Quando BizTalk Server riceve e invia messaggi, il server potrebbe dover preparare e trasformare i messaggi per l'ingresso e l'uscita, a causa di motivi aziendali. In BizTalk Server le pipeline forniscono un'implementazione del modello di integrazione Pipe e filtri e includono molte funzionalità, ad esempio un codificatore JSON e un decodificatore MIME o SMIME e così via.

    Quando è necessario aggiungere informazioni al contesto di un messaggio che richiede la personalizzazione della pipeline, BizTalk Server offre la possibilità di personalizzare queste pipeline creando componenti della pipeline personalizzati. Un componente della pipeline personalizzato è a.NET classe usata per implementare più interfacce BizTalk e quindi usare all'interno di diverse fasi di qualsiasi pipeline personalizzata. Per scrivere codice per tale componente, è possibile usare C# o Visual Basic per .NET.

  • Criteri del motore regole

    Un criterio del motore regole di business è un altro tipo di artefatto che è possibile condividere tra applicazioni BizTalk Server distribuite nello stesso gruppo BizTalk. Se sono presenti regole comuni del motore regole business, ad esempio correlate al routing dei messaggi, è possibile gestire queste regole in un'unica posizione e condividerle ampiamente tra le applicazioni BizTalk installate. Il motore regole business memorizza queste regole nella cache, quindi se si apportano aggiornamenti a queste regole, è necessario riavviare il servizio di aggiornamento del motore regole di business. In caso contrario, le modifiche vengono prelevate nel timeout della cache successivo.

Servizi di integrazione Azure

  • Connettori

    Per App per la logica di Azure, un account di integrazione è un contenitore basato sul cloud e una risorsa di Azure che fornisce accesso centralizzato agli artefatti riutilizzabili. Per i flussi di lavoro delle app per la logica a consumo, questi elementi includono partner commerciali, contratti, schemi XSD, mappe XSLT, mappe basate su modelli liquid, certificati, configurazioni batch e assembly .NET Fx.

    Per i flussi di lavoro dell'app per la logica Standard, App per la logica di Azure recentemente introdotto il supporto per la chiamata di assembly .NET Fx da trasformazioni XSLT senza richiedere un account di integrazione. In alternativa, è possibile aggiungere schemi, mappe e assembly a un progetto di app per la logica Standard in Visual Studio Code e successivamente distribuirlo in Azure.

  • API

    Le API consentono esperienze digitali, rendere i dati e i servizi riutilizzabili e universalmente accessibili, semplificare l'integrazione delle applicazioni e sostenere nuovi prodotti digitali. Con la proliferazione e l'aumento della dipendenza dalle API, le organizzazioni devono gestirle come asset di prima classe per tutto il ciclo di vita.

    È possibile riutilizzare le API, in particolare quelle gestite con Azure Gestione API, all'interno di Azure Integration Services. Dopo aver aggiunto API ad Azure Gestione API, è possibile usare il connettore Gestione API con flussi di lavoro dell'app per la logica a consumo per accedere facilmente alle API in modo gestito e regolamentato. App per la logica di Azure supporta anche la creazione e l'uso di API personalizzate in modo che l'organizzazione possa promuovere il riutilizzo in tutta l'azienda ed evitare connettori ridondanti non necessari che gli sviluppatori potrebbero altrimenti creare. Le API personalizzate democratizzano anche chi può usare queste API, invece di avere lo sviluppatore a capire i meccanismi per usare una particolare API.

  • Connettori personalizzati

    Se non esistono connettori predefiniti per le API da usare, è possibile eseguire il wrapping di un'API esterna o esterna con uno schema OpenAPI per creare un connettore personalizzato e accedere a tale connettore dai flussi di lavoro dell'app per la logica di consumo con le autorizzazioni appropriate. Il connettore personalizzato crea un contratto tra App per la logica di Azure e l'API che consente all'assembly semplice di messaggi di richiesta e per App per la logica di Azure di ricevere una risposta tipizzata che è possibile usare nelle azioni downstream. Entrambe le API REST e le API SOAP sono supportate e possono fare riferimento a API pubbliche o API private presenti nella rete locale. È anche possibile usare connettori personalizzati con Microsoft Power Automate e Microsoft Power Apps.

    Per i flussi di lavoro dell'app per la logica Standard, è possibile creare connettori personalizzati predefiniti basati su un provider di servizi.

    Implementando un connettore personalizzato, è possibile semplificare l'esperienza di sviluppo creando un'interfaccia comune per l'invio di messaggi di richiesta e la ricezione di risposte tipate. Per altre informazioni, vedere Connettori personalizzati e API.

Adattatori e connettori

La sezione seguente descrive i concetti degli adattatori e dei connettori rispettivamente in BizTalk Server e In Azure Integration Services.

BizTalk Server

Per scambiare messaggi con sistemi esterni, applicazioni ed entità, BizTalk Server fornisce adattatori, che sono componenti COM o .NET Fx che trasferiscono messaggi da e verso endpoint aziendali, ad esempio file system, database e applicazioni aziendali personalizzate usando diversi protocolli di comunicazione. BizTalk Server fornisce adattatori nativi che supportano vari protocolli, ad esempio:

  • Adattatore file che supporta l'invio e la ricezione di messaggi da un percorso di file
  • Adapter per protocolli EDI, FTP, HTTP, MSMQ, SMTP, POP3 e SOAP
  • Adattatore per Windows SharePoint Services

BizTalk Adapter Framework offre un meccanismo stabile e aperto per tutte le schede per implementare o accedere al lavoro dal motore di messaggistica di BizTalk Server. Le interfacce nello spazio dei nomi Microsoft.BizTalk.Adapter.Framework consentono agli adapter di modificare le pagine delle proprietà di configurazione. BizTalk Adapter Framework offre anche la possibilità di importare servizi e schemi in un progetto BizTalk. Gli adattatori partner sono disponibili anche da vari fornitori e membri della community. Per un elenco di adattatori noti, vedere BizTalk Server: Elenco di adapter di terze parti.

Servizi di integrazione Azure

Quando si creano flussi di lavoro con App per la logica di Azure, è possibile usare connettori predefiniti per semplificare e rapidamente l'uso di dati, eventi e risorse in altre app, servizi, sistemi, protocolli e piattaforme, in genere senza dover scrivere codice. App per la logica di Azure offre una raccolta in continua espansione con centinaia di connettori che è possibile usare. È possibile creare soluzioni di integrazione per molti servizi e sistemi, basati sul cloud o locali, sia da Microsoft che da partner, ad esempio BizTalk Server, Salesforce, Office 365, database SQL, la maggior parte dei servizi di Azure, mainframe, API e altro ancora. Alcuni connettori forniscono operazioni che eseguono operazioni di programmazione, ad esempio istruzioni condizionali (if), cicli, operazioni sui dati, gestione delle variabili e così via. Se non è disponibile alcun connettore per la risorsa desiderata, è possibile usare l'operazione HTTP generica per comunicare con il servizio oppure creare un connettore personalizzato.

Tecnicamente, un connettore è un proxy o un wrapper intorno a un'API usata dal servizio o dal sistema sottostante per comunicare con App per la logica di Azure. Questo connettore fornisce le operazioni usate nei flussi di lavoro per eseguire attività. Un'operazione è disponibile come trigger o azione con proprietà che è possibile configurare. Alcuni trigger e azioni richiedono anche di creare e configurare una connessione al servizio o al sistema sottostante. Se necessario, si eseguirà anche l'autenticazione dell'accesso a un account utente.

La maggior parte dei connettori in App per la logica di Azure è un connettore predefinito o un connettore gestito. Alcuni connettori sono disponibili in entrambe le versioni. Le versioni disponibili dipendono dal fatto che si crei un flusso di lavoro dell'app per la logica a consumo o un flusso di lavoro dell'app per la logica Standard.

  • I connettori predefiniti sono progettati per essere eseguiti in modo nativo nel runtime di App per la logica di Azure e in genere offrono prestazioni migliori, velocità effettiva, capacità o altri vantaggi rispetto a qualsiasi controparte del connettore gestito.

  • I connettori gestiti vengono distribuiti, ospitati e gestiti da Microsoft in Azure. Questi connettori forniscono trigger e azioni per i servizi cloud, i sistemi locali o entrambi. Nei flussi di lavoro dell'app per la logica Standard tutti i connettori gestiti vengono raggruppati come connettori di Azure . Tuttavia, nei flussi di lavoro dell'app per la logica a consumo i connettori gestiti vengono raggruppati come Standard o Enterprise, in base al relativo livello di prezzo.

Per altre informazioni, consultare la documentazione seguente:

Connettività dell'applicazione

La sezione seguente descrive le opzioni per connettersi ad altre applicazioni da BizTalk Server e Azure Integration Services.

BizTalk Server

Gli adapter forniscono le funzionalità di connettività in BizTalk Server ed eseguite localmente nel server BizTalk che esegue l'operazione di invio o ricezione. Sono disponibili circa 30 schede predefinite, mentre un piccolo ecosistema di schede ISV offre funzionalità aggiuntive. Con queste schede in esecuzione in locale, l'autenticazione di Windows è un metodo di autenticazione comune. Gli adattatori di uso comune includono FILE, SFTP, SQL, WCF (Basic-HTTP), HTTP e SMTP. Da questo elenco è possibile determinare che gli adapter in BizTalk Server sono principalmente adattatori di protocollo. Di conseguenza, gli adattatori usano in genere un modello di messaggistica orientato ai messaggi in cui un messaggio completo viene scambiato con altri sistemi in cui tali sistemi sono responsabili dell'analisi dei dati prima di caricare i dati nell'archivio dati finale.

Servizi di integrazione Azure

Connessione ors forniscono le funzionalità di connettività in App per la logica di Azure e offrono un'astrazione oltre alle API di proprietà del sistema SaaS sottostante. Ad esempio, i servizi come SharePoint vengono compilati usando un approccio API-first in cui le API forniscono funzionalità al servizio per gli utenti finali, ma la stessa funzionalità viene esposta per consentire ad altri sistemi di chiamare tramite un'API. Per semplificare la chiamata a queste API, i connettori usano i metadati per descrivere il contratto di messaggistica in modo che gli sviluppatori sappiano quali dati sono previsti nella richiesta e nella risposta.

Lo screenshot seguente mostra l'esperienza di ricerca del connettore per un flusso di lavoro dell'app per la logica Standard in App per la logica di Azure a tenant singolo. Quando si seleziona la scheda Predefinita, è possibile trovare connettori predefiniti, ad esempio Funzioni di Azure, bus di servizio di Azure, SQL Server, Archiviazione di Azure, file system, HTTP e altro ancora. Nella scheda Azure sono disponibili più di 800 connettori, inclusi altri connettori SaaS Microsoft, connettori SaaS partner e così via.

Screenshot showing the Azure portal, Standard logic app workflow designer, and the available connectors based on whether the Built-in tab or Azure tab is selected.

Servizi Web e connettività API

La sezione seguente descrive il supporto per servizi Web e connettività API in BizTalk Server e Azure Integration Services.

BizTalk Server

Il supporto dei servizi Web è una funzionalità molto diffusa in BizTalk Server ed è disponibile grazie all'integrazione con Windows Communication Foundation (WCF). Questo supporto in BizTalk rientra in due categorie: pubblicazione e utilizzo di servizi WCF.

Gli adattatori WCF forniscono il supporto per gli standard WS-*, ad esempio WS-Addressing, WS-Security e WS-AtomicTransaction. Tuttavia, WS-ReliableMessaging non è supportato in questa versione degli adattatori WCF.

Gli adapter WCF supportano Single Sign On (SSO) tramite la rappresentazione e acquisiscono il ticket Enterprise SSO per l'uso dell'accesso SSO con adapter WCF. Questa funzionalità consente al contesto utente di fluire tra i sistemi. Dal punto di vista dell'autenticazione, l'autenticazione del servizio supporta i tipi seguenti: Nessuno, Windows e Certificato. L'autenticazione client supporta i tipi seguenti: Anonymous, UserName, Windows e Certificate. Le modalità di sicurezza supportate includono i tipi seguenti: Trasporto, Messaggio e Misto.

WCF supporta le transazioni usando il protocollo WS-AutomicTransaction, disponibile in adattatori WCF, ad esempio WCF-WsHttp, WCF-NetTcp e WCF-NetMsmq. Questa funzionalità è supportata negli scenari seguenti:

  • Invio transazionale di messaggi al database MessageBox
  • Trasmissione transazionale di messaggi da MessageBox a una destinazione transazionale

L'ambito transazionale è limitato dal componente MessageBox. Ad esempio, un'orchestrazione BizTalk non può partecipare alla transazione di un client. Analogamente, un endpoint di destinazione non può partecipare a una transazione avviata da un'orchestrazione BizTalk.

L'estendibilità WCF è disponibile tramite associazioni personalizzate WCF. Sarà necessario compilare e aggiungere codice personalizzato alla Global Assembly Cache (GAC). Sarà anche necessario aggiornare il file machine.config per includere la nuova estensione. Dopo l'installazione dell'associazione, l'estensione è visibile agli adattatori WCF-Custom e WCF-CustomIsolated.

BizTalk Server può esporre le posizioni di ricezione WCF-BasicHTTP come endpoint all'interno di Azure Gestione API quando si usa la console di Amministrazione istration BizTalk. È anche possibile esporre gli endpoint SOAP tramite Gestione API da BizTalk Server usando Gestione API nella portale di Azure. Per altre informazioni, vedere Pubblicare endpoint WCF-BasicHTTP bizTalk in Gestione API.

Servizi di integrazione Azure

Il modello di connettività in Azure Integration Services differisce da BizTalk Server, parzialmente a causa dell'evoluzione dell'economia dell'API. Man mano che più organizzazioni espongono l'accesso ai sistemi e ai dati sottostanti, è stato necessario un approccio indipendente dalla piattaforma. REST è ora l'approccio architetturale dominante per la progettazione di servizi Web moderni.

In App per la logica di Azure REST è l'approccio predefinito per la connessione dei sistemi. Poiché Microsoft e altri fornitori di software espongono servizi RESTful sui propri sistemi e dati, App per la logica di Azure possono esporre e utilizzare questo tipo di informazioni. La specifica OpenAPI rende questa funzionalità possibile sia per gli esseri umani che per i computer per comprendere l'interazione tra un client e un server tramite i metadati. Come parte di questa comprensione, vengono derivati sia i payload di richiesta che di risposta, il che significa che è possibile usare il contenuto dinamico per popolare gli input di un'azione del flusso di lavoro e usare gli output della risposta nelle azioni downstream.

In base al fornitore di software che implementa il servizio sottostante che un connettore chiama, gli schemi di autenticazione variano in base al connettore. In genere, questi schemi includono i tipi seguenti:

Microsoft offre livelli di protezione avanzata crittografando i dati durante il transito e i dati inattivi. Quando il traffico dei clienti di Azure si sposta tra data center, al di fuori dei limiti fisici non controllati da Microsoft o per conto di Microsoft, si applica un metodo di crittografia del livello di collegamento dati che usa I edizione Enterprise E 802.1AE MAC Security Standards (MACsec) da punto a punto nell'hardware di rete sottostante.

Microsoft offre la possibilità di usare il protocollo TLS (Transport Layer Security) per proteggere i dati che viaggiano tra servizi cloud e clienti. I data center Microsoft negoziano una connessione TLS con i sistemi client che si connettono ai servizi di Azure. TLS offre autenticazione avanzata, privacy dei messaggi e integrità, che consente il rilevamento di manomissioni, intercettazioni e falsità dei messaggi insieme all'interoperabilità, alla flessibilità degli algoritmi e alla facilità di distribuzione e uso.

Anche se questa sezione è incentrata sulla connettività RESTful tramite i connettori, è possibile implementare la connettività del servizio Web SOAP tramite l'esperienza del connettore personalizzata.

Bloccare l'utilizzo dell'adattatore o del connettore

La sezione seguente descrive le opzioni per impedire l'utilizzo di adattatori o connettori rispettivamente in BizTalk Server e In Azure Integration Services.

BizTalk Server

BizTalk Server non include il concetto di blocco di adattatori specifici da applicazioni diverse, ma è possibile "bloccare" l'utilizzo nelle applicazioni rimuovendo tali adattatori dall'ambiente. Gli adapter in BizTalk Server fanno parte delle impostazioni della piattaforma, quindi gli adattatori installati sono disponibili per chiunque possa usare. È anche possibile definire gestori di ricezione e invio specifici per ogni adapter, che definisce i computer appartenenti al gruppo BizTalk in grado di eseguire o elaborare tali gestori.

Servizi di integrazione Azure

Se l'organizzazione non consente la connessione a risorse limitate o non approvati usando connettori gestiti in App per la logica di Azure, è possibile bloccare la funzionalità di creare e usare tali connessioni nei flussi di lavoro dell'app per la logica. Con Criteri di Azure è possibile definire e applicare criteri che impediscono la creazione o l'uso delle connessioni per i connettori che si desidera bloccare. Ad esempio, per motivi di sicurezza, è possibile bloccare le connessioni a piattaforme di social media specifiche o ad altri servizi e sistemi.

Durabilità dei messaggi

La sezione seguente descrive la persistenza dei messaggi in BizTalk Server e Azure Integration Services.

BizTalk Server

Il database MessageBox offre un altro vantaggio fungendo da punto di persistenza che assicura che un messaggio venga salvato in modo permanente nell'archiviazione prima di tentare di inviare a un endpoint. Se il messaggio non riesce a essere inviato dopo aver esaurito i tentativi configurati, il messaggio viene sospeso e archiviato in MessageBox.

Diagram showing BizTalk MessageBox database as a persistence point.

Gli amministratori possono riprendere i messaggi sospesi dalla console di Amministrazione istration bizTalk. Lo stesso comportamento si verifica quando si usano orchestrazioni. Il runtime di orchestrazione rende persistente la logica di business, che può essere ripresa in caso di errore. Ad esempio, è possibile riprendere un messaggio in un'orchestrazione negli scenari seguenti:

  • Messaggio inviato all'interno di un ambito non atomico
  • Alla fine di un ambito transazionale
  • Quando si avvia una nuova istanza di orchestrazione (forma Avvia orchestrazione)
  • In un punto di interruzione di debug
  • Quando il motore decide di disidratare
  • Al termine dell'orchestrazione
  • Quando il sistema si arresta

BizTalk Server offre tutte queste funzionalità predefinite. Non è necessario preoccuparsi dell'implementazione della persistenza perché BizTalk Server gestisce automaticamente questa funzionalità.

Servizi di integrazione Azure

App per la logica di Azure offre durabilità dei messaggi nei modi seguenti:

  • I flussi di lavoro con stato, che sono l'impostazione predefinita nelle app per la logica a consumo e disponibili nelle app per la logica Standard, hanno checkpoint che tengono traccia dello stato del flusso di lavoro e archiviano i messaggi mentre passano le azioni del flusso di lavoro. Questa funzionalità consente di accedere a dati avanzati archiviati nella cronologia di esecuzione del trigger e dell'istanza del flusso di lavoro, in cui è possibile esaminare i valori dettagliati di input e output.

    È possibile rielaborare un'istanza di esecuzione tramite portale di Azure o un'API. Come questa volta, viene eseguita l'intera istanza di esecuzione, indipendentemente dalla posizione in cui si è verificato un errore nell'esecuzione precedente. Questo comportamento implica che i messaggi vengono recapitati almeno una volta e che l'elaborazione idempotente avviene nei consumer.

  • Con la messaggistica peek-lock disponibile in bus di servizio di Azure, è possibile eseguire il commit di un messaggio dopo l'esecuzione del messaggio o abbandonare il messaggio quando si verifica un errore. Per usare questa funzionalità in App per la logica di Azure, selezionare il connettore bus di servizio di Azure. Un messaggio di cui è stato eseguito il commit viene rimosso dalla coda di messaggi, mentre un messaggio abbandonato viene sbloccato e disponibile per l'elaborazione da parte dei client. Il blocco a comparsa è un ottimo modo per ottenere la messaggistica "esattamente una volta".

Architettura di pubblicazione-sottoscrizione

La sezione seguente descrive le opzioni per implementare il modello publish-subscribe in BizTalk Server e Azure Integration Services.

BizTalk Server

Le funzionalità publish-subscribe (pub-sub) esistono tramite il database MessageBox, descritto in precedenza nella sezione Funzionamento di BizTalk Server. Un modo comune per creare sottoscrizioni consiste nell'usare proprietà alzate di livello, che consentono di identificare elementi o attributi specifici in uno schema di messaggio definito come proprietà alzata di livello. È quindi possibile stabilire sottoscrizioni per filtrare i messaggi in base a criteri specifici rispetto a una proprietà alzata di livello. Ad esempio, se si alza di livello un elemento dello schema denominato City, è possibile creare una sottoscrizione che filtra l'elemento City per città specifiche. Se vengono soddisfatti i criteri, la sottoscrizione, una porta di trasmissione o un'orchestrazione riceve una copia del messaggio.

Servizi di integrazione Azure

Con un'architettura completamente diversa da BizTalk Server, la maggior parte dei servizi in Azure Integration Services è basata su eventi. Se è necessario implementare una soluzione publish-subscribe, è possibile usare bus di servizio di Azure. Questo servizio è un broker di messaggi aziendale completamente gestito con code di messaggi e argomenti di pubblicazione-sottoscrizione in uno spazio dei nomi. È possibile usare bus di servizio di Azure per separare le applicazioni e i servizi tra loro, offrendo i vantaggi seguenti:

  • Bilanciare il carico tra i ruoli di lavoro concorrenti.
  • Cassaforte instradare e trasferire i dati con il controllo tra limiti del servizio e dell'applicazione.
  • Coordinare il lavoro transazionale che richiede un elevato grado di affidabilità.

App per la logica di Azure include un connettore bus di servizio di Azure che è possibile usare per pubblicare e sottoscrivere i messaggi. Il vantaggio dell'uso di bus di servizio è che è possibile usare la messaggistica indipendentemente dal flusso di lavoro. A differenza di BizTalk Server, la messaggistica viene disaccoppiata dalla piattaforma del flusso di lavoro. Sebbene le funzionalità di messaggistica e flusso di lavoro siano disaccoppiate in Azure Integration Services, è possibile creare sottoscrizioni di messaggi in bus di servizio di Azure, che include il supporto per le proprietà dei messaggi (proprietà utente). Usare queste proprietà per fornire coppie chiave-valore valutate dai filtri creati in una sottoscrizione dell'argomento. Queste proprietà utente vengono definite quando si configura un'operazione di bus di servizio di Azure aggiungendo una o più coppie chiave-valore. Per una dimostrazione, vedere il video seguente: Pub Sub Messaging using Azure Integration Services - Part 2 Content Based Routing (Messaggistica secondaria pub con Azure Integration Services - Parte 2).

All'esterno di Azure Integration Services, è anche possibile implementare scenari di pubblicazione-sottoscrizione usando è anche possibile usare cache di Azure per Redis.

Motore regole business

La sezione seguente descrive le opzioni per la configurazione di regole business in BizTalk Server e Azure Integration Services.

BizTalk Server

BizTalk Server include un motore regole di concatenamento in avanti che consente di creare regole "if-then-else" usando un editor visivo. È possibile aggregare queste regole all'interno di un criterio trasportabile in altri ambienti nel panorama IT. Questi criteri possono anche accedere agli schemi XSD, al codice FX .NET e alle tabelle di database di SQL Server per cercare i dati e arricchire gli output.

Servizi di integrazione Azure

Anche se in Azure non esiste alcuna funzionalità equivalente del motore regole, i clienti usano spesso Funzioni di Azure per implementare regole usando codice personalizzato. Accedono quindi a queste regole usando il connettore Funzioni di Azure predefinito in App per la logica di Azure.

Per altre informazioni sugli investimenti futuri in questo settore, vedere la sezione Roadmap più avanti in questa guida.

Trasformazione dei dati

La sezione seguente descrive le funzionalità di trasformazione dei dati in BizTalk Server e Azure Integration Services.

BizTalk Server

Fornisce strumenti avanzati per trasformare i messaggi XML da un formato a un altro. La trasformazione dei dati usa mappe XSLT, che supportano oggetti di estensione che consentono di inserire codice .NET Fx personalizzato al centro di queste mappe. È anche possibile usare functoid predefiniti che forniscono funzionalità riutilizzabili che consentono di creare mappe avanzate.

Oltre alle trasformazioni XML di base, BizTalk Server fornisce anche la codifica e la decodifica per i formati CSV e JSON, in modo da poter eseguire la conversione tra questi formati e XML, offrendo supporto per formati diversi.

Servizi di integrazione Azure

  • Enterprise Integration Pack

    Questo componente segue concetti simili in BizTalk Server e semplifica l'uso delle funzionalità B2B in App per la logica di Azure. Tuttavia, una delle principali differenze è che Enterprise Integration Pack è basato sull'architettura in base agli account di integrazione. Questi account semplificano l'archiviazione, la gestione e l'uso di artefatti, ad esempio partner commerciali, contratti, mappe (modelli XSLT o Liquid), schemi e certificati, per scenari B2B.

  • Modelli Liquid

    Per le trasformazioni JSON di base nei flussi di lavoro dell'app per la logica, è possibile usare operazioni di dati predefinite, ad esempio l'azione Componi o Analizza JSON. Tuttavia, alcuni scenari potrebbero richiedere trasformazioni avanzate e complesse che includono elementi quali iterazioni, flussi di controllo e variabili. Per le trasformazioni da JSON a JSON, DA JSON a testo, DA XML a JSON o DA XML a testo, è possibile creare un modello Liquid che descrive il mapping o la trasformazione necessari usando il linguaggio del modello open source Liquid.

  • Schemi EDI

    Gli schemi di documento EDI definiscono il corpo di un tipo di documento di transazione EDI. Per i flussi di lavoro dell'app per la logica, tutti gli schemi EDI BizTalk nel repository GitHub di integrazione Microsoft sono disponibili pubblicamente per l'uso.

  • App per la logica standard

    Nella portale di Azure è possibile caricare mappe e schemi direttamente in una risorsa dell'app per la logica Standard. Se si usa un progetto di app per la logica Standard in Visual Studio Code, è possibile caricare questi artefatti nelle rispettive cartelle all'interno della cartella Artifacts senza usare un account di integrazione. È anche possibile chiamare assembly compilati personalizzati da mappe XSLT.

  • Funzioni di Azure

    È possibile eseguire trasformazioni di modelli XSLT o Liquid usando C# o qualsiasi altro linguaggio di programmazione per creare una funzione di Azure che è possibile chiamare con Azure Gestione API o App per la logica di Azure.

Connettività di rete

La sezione seguente descrive le funzionalità e le funzionalità di connettività di rete in BizTalk Server e Azure Integration Services.

BizTalk Server

Con BizTalk Server sempre installato in un ambiente server, la connettività di rete dipende dalla configurazione di rete del server sottostante. Quando si configura la connettività di rete per BizTalk Server, in genere è necessario configurare le aree seguenti:

  • Dipendenze
  • Connettività in ingresso e in uscita ai sistemi finali
Configurazione delle dipendenze

Per configurare completamente BizTalk Server in un ambiente multiserver, è necessario prestare particolare attenzione a tutte le dipendenze di connettività di rete, che in genere comporta la configurazione del firewall per abilitare le porte TCP e UDP per servizi o protocolli noti. Ad esempio, tali servizi e protocolli includono l'accesso a un motore di SQL Server, Microsoft Distributed Transaction Coordinator (MSDTC), unità di rete in cluster, servizi SSO se installati in un server diverso e SharePoint sono tutti i servizi che è necessario configurare creando regole in ingresso e in uscita per implementare la connettività.

Configurazione della connettività in ingresso e in uscita

Dopo aver configurato completamente BizTalk Server e aver pronti per la distribuzione delle applicazioni, assicurarsi di implementare regole del firewall che consentono alle istanze host di connettersi e accedere a servizi diversi, indipendentemente dal fatto che facciano parte di una rete interna o esterna. Quando si pensa alla connettività ai sistemi finali all'esterno della rete dell'organizzazione, è necessario includere anche considerazioni sulla sicurezza. Diversi sistemi si basano sulla definizione di un elenco di indirizzi IP consentiti come prima linea di difesa, quindi idealmente BizTalk Server instrada tutte le comunicazioni in uscita tramite un elenco ben definito di indirizzi IP pubblici.

Quando i servizi partner tentano di contattare BizTalk Server, assicurarsi che non raggiungano un'istanza all'interno della rete o del livello interno dell'organizzazione in cui potrebbero essere disponibili i servizi principali dell'organizzazione. Concedere invece ai servizi partner l'accesso a un endpoint esistente all'interno di una rete perimetrale, noto anche come zona demilitarizzata (DMZ), che è il limite più esterno della rete di un'organizzazione. Tuttavia, i servizi a cui BizTalk Server deve instradare i messaggi in genere esistono all'interno della rete dell'organizzazione, quindi devono avere accesso a tale livello interno.

Per ottenere questi scenari, esistono più approcci, ad esempio:

  • Implementare BizTalk Server in una rete perimetrale e consentire solo ai propri servizi o istanze host di accedere alla rete dell'organizzazione
  • Configurare due Server BizTalk con uno in una rete perimetrale e l'altro nella rete dell'organizzazione. Il server nella rete perimetrale pubblica quindi i messaggi utilizzati dal server nella rete organizzativa.
  • Sviluppare applicazioni personalizzate o software dell'appliance, ad esempio NetScaler e F5, che possono fungere da proxy inversi, ricevere messaggi per conto di BizTalk all'interno della rete perimetrale e reindirizzare tali chiamate a BizTalk Server.

Servizi di integrazione Azure

  • Connettività in ingresso e in uscita

    Azure offre diversi modi per isolare i servizi all'interno di un limite di rete e connettere carichi di lavoro locali e cloud. L'elenco seguente descrive i diversi modi in cui è possibile integrare le risorse di Azure con le risorse all'interno di un perimetro di rete:

    • Gateway dati locale

      Questo gateway funge da ponte tra Azure e le risorse all'interno di un perimetro di rete, offrendo un trasferimento rapido e sicuro dei dati tra i dati locali e vari servizi cloud Microsoft. Questi servizi includono App per la logica di Azure, Microsoft Power BI, Microsoft Power Apps, Microsoft Power Automate e Azure Analysis Services. Con questo gateway è possibile mantenere i database e altre origini dati all'interno delle reti locali e usarli in modo sicuro nei servizi cloud.

    • Connessioni ibride

      Sia un servizio di Azure che una funzionalità nel servizio app Azure, le Connessione ibride supportano scenari e offrono funzionalità oltre a quelle usate nel servizio app Azure. Per altre informazioni sull'utilizzo al di fuori del servizio app Azure, vedere Connessione ibride di Inoltro di Azure. All'interno del servizio app Azure è possibile usare Connessione ibride per accedere alle risorse dell'applicazione in qualsiasi rete in grado di effettuare chiamate in uscita ad Azure sulla porta 443. Le Connessione ibride forniscono l'accesso dall'app a un endpoint TCP e non consentono un nuovo modo per accedere all'app. In app Azure Servizio ogni connessione ibrida è correlata a una singola combinazione di host TCP e porta. Questa funzionalità consente alle app di accedere alle risorse in qualsiasi sistema operativo, purché esista un endpoint TCP. Le Connessione ibride non conoscono o si preoccupano del protocollo dell'applicazione o di ciò che si vuole accedere. Questa funzionalità fornisce semplicemente l'accesso alla rete.

    • Integrazione della rete virtuale

      Con l'integrazione di Azure Rete virtuale, è possibile connettere la risorsa di Azure a una rete virtuale configurata in Azure, concedendo all'app l'accesso alle risorse in tale rete virtuale. L'integrazione della rete virtuale in App per la logica di Azure viene usata solo per effettuare chiamate in uscita dalla risorsa di Azure alla rete virtuale.

      Con il peering di rete virtuale è possibile connettere le reti locali ad Azure, che offre connettività bidirezionale tra le risorse locali e i servizi di Azure. Azure Integration Services offre connettività di rete virtuale, consentendo l'integrazione ibrida. L'immagine seguente mostra una risorsa dell'app per la logica Standard con la pagina Rete aperta e l'integrazione della rete virtuale abilitata come evidenziato nella casella Traffico in uscita. Questa configurazione garantisce che tutto il traffico in uscita si esce da questa rete virtuale.

      Screenshot showing Azure portal, Standard logic app resource, and Networking page with virtual network integration enabled.

    • Endpoint privati

      L'endpoint privato è un'interfaccia di rete che usa un indirizzo IP provato della rete virtuale. Questa interfaccia di rete si connette privatamente e in modo sicuro a una risorsa di Azure basata su collegamento privato di Azure. Abilitando un endpoint privato, la risorsa di Azure viene inserita nella rete virtuale e si consente alle risorse nella rete di effettuare chiamate in ingresso alla risorsa di Azure.

La tabella seguente illustra i metodi di connettività di rete che ogni risorsa di Azure Integration Services può usare:

Risorsa Gateway dati locale Connessioni ibride Integrazione della rete virtuale Endpoint privati
Gestione API di Azure
App per la logica di Azure (consumo)
App per la logica di Azure (standard)
(con connettori di Azure)

(con connettori predefiniti)

(con connettori predefiniti)
Bus di servizio di Azure
Azure Event Grid

Codice personalizzato

La sezione seguente descrive le opzioni per la creazione e l'esecuzione di codice personalizzato in BizTalk Server e Azure Integration Services.

BizTalk Server

È possibile estendere BizTalk in molti modi usando codice .NET Fx personalizzato, ad esempio:

Funzionalità Descrizione
Codice inline È possibile scrivere codice C# inline all'interno di una forma di orchestrazione. È anche possibile scrivere codice inline all'interno di una mappa BizTalk. In entrambi gli scenari, i frammenti di codice sono in genere semplici per natura e non possono essere sottoposto a debug.
Assembly compilati È possibile chiamare questi assembly dalle posizioni seguenti:

- Espressioni in un'orchestrazione
- Mappe BizTalk con il functoid Scripting
- Criteri del motore regole di business
- Pipeline come componenti della pipeline personalizzati

È possibile eseguire il debug degli assembly compilati collegando il debugger di Visual Studio al processo windows dell'istanza host appropriata.
Adattatori personalizzati BizTalk Server include molti adattatori predefiniti, ma è sempre possibile creare un adattatore personalizzato, se necessario.
Comportamenti WCF personalizzati BizTalk Server include molte schede predefinite con la maggior parte basata su Windows Communication Foundation (WCF). In alcuni casi, potrebbe essere necessario estendere le funzionalità sviluppando comportamenti personalizzati, ad esempio applicando un'intestazione OAuth alla comunicazione di sistema.
Estendibilità nelle mappe di BizTalk Server - È possibile creare codice inline usando C#, JScript, Visual Basic, XSLT o XSLT Call Templates per eliminare alcune limitazioni o difficoltà usando i functoid predefiniti.

- È possibile chiamare un assembly esterno usando il functoid Scripting.

- È possibile creare functoid personalizzati da usare in tutte le mappe.

Servizi di integrazione Azure

Funzioni di Azure offre la possibilità di scrivere codice che è possibile eseguire dal connettore Funzioni di Azure in App per la logica di Azure. La piattaforma Funzioni supporta diversi linguaggi di programmazione e runtime, che offrono molta flessibilità. Queste funzioni sono in genere progettate per avere tempi di esecuzione brevi ed esiste un set completo di strumenti di sviluppo per supportare lo sviluppo e il debug locali.

In App per la logica di Azure, il connettore Codice inline fornisce l'azione denominata Esegui codice JavaScript. È possibile usare questa azione per scrivere frammenti di codice di piccole dimensioni in JavaScript. Questi frammenti di codice prevedono anche tempi di esecuzione brevi e supportano input e output dinamici del contenuto. Dopo l'esecuzione del codice, l'output è disponibile per le azioni downstream nel flusso di lavoro. Anche se non esiste attualmente alcun supporto diretto per il debug per questa azione, è possibile visualizzare gli input e gli output nella cronologia di esecuzione dell'istanza del flusso di lavoro.

Come indicato nella sezione Componenti riutilizzabili, il supporto per la chiamata di assembly .NET Fx da una mappa XSLT è attualmente disponibile nei flussi di lavoro dell'app per la logica a consumo quando si caricano tali assembly in un account di integrazione. Questa funzionalità consente di supportare regole di trasformazione dei dati personalizzate. Per i flussi di lavoro dell'app per la logica Standard, il team App per la logica di Azure ha rilasciato di recente il supporto per chiamare il codice .NET Fx dalle mappe XSLT senza richiedere un account di integrazione. È anche possibile aggiungere assembly e mapping a un progetto di app per la logica Standard in Visual Studio Code e successivamente distribuirlo in Azure. Per altre informazioni, vedere Supporto degli assembly .NET Framework aggiunto alle trasformazioni XSLT App per la logica di Azure (Standard) e alla sezione Road Map.

È anche possibile estendere i flussi di lavoro includendo app per le API di Azure o app Web create con il servizio app Azure. Quando è necessario ospitare app Web, API REST e back-end per dispositivi mobili, app Azure Servizio è la soluzione basata su HTTP. È possibile integrare le app ospitate nel servizio app Azure con servizi locali o cloud. Questa piattaforma supporta ambienti basati su Windows e Linux per eseguire e ridimensionare applicazioni insieme a vari linguaggi e framework, ad esempio ASP.NET Core, Java, Ruby, Node.js, PHP e Python.

Gruppi di applicazioni

La sezione seguente descrive le opzioni per organizzare i carichi di lavoro in BizTalk Server e Azure Integration Services.

BizTalk Server

Parte del ciclo di vita dello sviluppo software include la creazione e la gestione del codice e degli artefatti nei pacchetti logici. BizTalk Server supporta il concetto di applicazione in modo che sia possibile distribuire una soluzione di Visual Studio in un'applicazione BizTalk. Pertanto, se si hanno scenari in cui è necessario condividere le risorse, è possibile fare riferimento ad altre applicazioni.

BizTalk Server usa un modello di condivisione esplicito in cui è possibile aggiungere riferimenti agli assembly compilati. A condizione che questi assembly si trovino nella Global Assembly Cache (GAC), il runtime BizTalk trova e carica gli assembly in base alle esigenze. Uno svantaggio è che quando è necessario aggiornare gli assembly condivisi, a meno che non si implementi uno schema di controllo delle versioni, è necessario disinstallare tutti i progetti BizTalk che fanno riferimento agli assembly prima di eseguire l'aggiornamento. Questa limitazione può comportare tempi di distribuzione lunghi e complessità nella gestione di più installazioni e disinstallazioni.

Servizi di integrazione Azure

In App per la logica di Azure, la risorsa app per la logica a consumo include solo un singolo flusso di lavoro con stato, ovvero la risorsa del flusso di lavoro e dell'app per la logica, ovvero l'applicazione, ha sempre una relazione da 1 a 1. Con la risorsa dell'app per la logica Standard, il concetto di applicazione si è evoluto. Anche se la risorsa dell'app per la logica Standard è ancora l'applicazione, è possibile includere ed eseguire più flussi di lavoro con questa risorsa, con conseguente relazione da 1 a molti. Se si usa localmente un progetto di app per la logica Standard in Visual Studio Code, la risorsa dell'app per la logica esegue il mapping a questo singolo progetto. Con questo approccio, è possibile raggruppare facilmente e logicamente carichi di lavoro, codice ed artefatti correlati nello stesso progetto e distribuirne il progetto come singola unità.

Le architetture cloud funzionano in modo diverso rispetto ai paradigmi basati su server, ad esempio BizTalk. App per la logica di Azure (Standard) usa un modello pull per inserire codice e artefatti. Di conseguenza, si copieranno eventuali elementi necessari aggiuntivi nel progetto e successivamente distribuirli con il codice e altri artefatti. In alcuni casi, è consigliabile evitare di dover copiare tutto il codice e gli artefatti necessari. In tal caso, è possibile trasformare questa funzionalità in un servizio che è possibile gestire separatamente, ma può chiamare da un flusso di lavoro.

Si supponga, ad esempio, di avere una trasformazione dei dati ampiamente usata dall'organizzazione. Anziché includere la mappa per la trasformazione in più progetti di app per la logica, è possibile implementare un'interfaccia che fornisce la trasformazione come servizio. È quindi possibile gestire il ciclo di vita del servizio separatamente dai progetti dell'app per la logica e chiamare tale servizio dai flussi di lavoro.

Con la possibilità di includere più flussi di lavoro in un progetto di app per la logica Standard, è possibile chiedersi come organizzare tali flussi di lavoro all'interno di un progetto o in più progetti? La risposta dipende in genere dai requisiti, ad esempio:

  • Affinità del processo aziendale
  • Monitoraggio e supporto end-to-end
  • Sicurezza, controllo degli accessi in base al ruolo e isolamento della rete
  • Prestazioni e criticità aziendale
  • Posizione geografica e ridondanza geografica

Per altre informazioni, vedere Organizzazione dei flussi di lavoro delle app per la logica in App per la logica di Azure (Standard).

Sicurezza e governance

La sicurezza e la governance sono naturalmente importanti quando si creano soluzioni integrate. Per definizione, il middleware si trova tra due o più sistemi. Per connettersi e accedere a questi sistemi quando si stabilisce una connessione, spesso è necessario passare credenziali o segreti, quindi la gestione di queste informazioni riservate richiede una considerazione.

BizTalk Server

BizTalk include Enterprise Single Sign-On (SSO), che consente di archiviare, mappare e trasmettere credenziali crittografate usate dagli adapter. Queste informazioni crittografate vengono archiviate nel database SSO. È anche possibile configurare le applicazioni affiliate SSO, ovvero entità logiche che rappresentano un sistema o un sistema line-of-business che si vuole connettere.

Servizi di integrazione Azure

App per la logica di Azure supporta le funzionalità di sicurezza seguenti:

  • Insieme di credenziali chiave di Azure

    È possibile archiviare credenziali, segreti, chiavi API e certificati usando Azure Key Vault. In App per la logica di Azure è possibile accedere a queste informazioni usando il connettore Azure Key Vault ed escludere queste informazioni dai log della piattaforma e dalla cronologia di esecuzione usando le funzionalità di input e output sicure.

    Più avanti nella sezione Rilevamento questa guida descrive la funzionalità della cronologia di esecuzione, che fornisce una riproduzione dettagliata dell'esecuzione di un flusso di lavoro. Anche se App per la logica di Azure offre la proposta di valore di acquisire ogni input e output in un'esecuzione del flusso di lavoro, a volte è necessario gestire l'accesso ai dati sensibili in modo più granulare. È possibile configurare l'offuscamento per questi dati usando la funzionalità di input e output sicuri su trigger e azioni per nascondere tale contenuto dalla cronologia di esecuzione e impedire l'invio di questi dati a Monitoraggio di Azure, in particolare Log Analytics e Application Insights. L'immagine seguente mostra un esempio di risultato dell'abilitazione di input sicuri e output sicuri nella cronologia di esecuzione.

    Screenshot showing hidden inputs and outputs in workflow run history after enabling secure inputs and outputs.

  • Integrazione basata su OAuth

    La maggior parte dei connettori usa questo tipo di autenticazione durante la creazione di connessioni. Questo approccio semplifica l'integrazione con molti servizi SaaS come fornire l'indirizzo di posta elettronica e la password. Azure Gestione API supporta anche OAuth, quindi è possibile usare entrambi i servizi insieme fornendo uno schema di autenticazione unificato.

    Questa funzionalità non è disponibile in modo nativo in BizTalk Server.

  • Identità gestite

    Alcuni connettori supportano l'uso di un'identità gestita per autenticare l'accesso alle risorse protette da Microsoft Entra ID. Quando si usa un'identità gestita per autenticare la connessione, non è necessario fornire credenziali, segreti o token Microsoft Entra.

Gestione delle applicazioni e gestione degli accessi

La sezione seguente descrive le opzioni per la gestione delle applicazioni e l'accesso in BizTalk Server e Azure Integration Services.

BizTalk Server

Amministrazione istrator usano BizTalk Server Amministrazione istrator Console per gestire le applicazioni BizTalk Server. Questo strumento è un'applicazione client spessa di Microsoft Management Console (MMC) che gli amministratori possono usare per distribuire applicazioni, esaminare le transazioni precedenti, attive e in coda ed eseguire attività di risoluzione dei problemi approfondite, ad esempio la revisione delle tracce e l'invio di transazioni.

Servizi di integrazione Azure

Il portale di Azure è uno strumento comune usato dagli amministratori e dal personale di supporto per visualizzare e monitorare l'integrità delle interfacce. Per App per la logica di Azure, questa esperienza include tracce di transazioni avanzate disponibili tramite la cronologia di esecuzione.

Sono disponibili anche controlli granulari degli accessi in base al ruolo, in modo da poter gestire e limitare l'accesso alle risorse di Azure a vari livelli.

Storage

La sezione seguente descrive le opzioni per l'archiviazione dei dati in BizTalk Server e Azure Integration Services.

BizTalk Server

BizTalk Server si basa principalmente su SQL Server per l'archivio dati e la persistenza dei dati. Tutti gli altri componenti e host in BizTalk Server hanno ruoli specifici nell'integrazione di applicazioni aziendali diverse, ad esempio ricezione, elaborazione o routing di messaggi. Tuttavia, il computer di database acquisisce e rende persistente il lavoro su disco. Ad esempio, quando BizTalk Server riceve un messaggio in arrivo, l'host di ricezione mantiene il messaggio nel database MessageBox prima che altri host recuperino il messaggio per l'elaborazione dell'orchestrazione e l'invio.

Poiché si è responsabili del provisioning e della gestione dei database SQL, la disponibilità elevata è un componente importante dell'architettura per garantire il tempo di attività. Per offrire disponibilità elevata per i database BizTalk Server, i clienti usano spesso Windows Clustering per creare un cluster server con due o più computer che eseguono SQL Server. Questo cluster di server fornisce ridondanza e tolleranza di errore per i database BizTalk Server. A differenza del clustering con carico bilanciato in cui un gruppo di computer interagisce per aumentare la disponibilità e la scalabilità, il clustering di server in genere comporta una coppia di computer di database in una configurazione attiva-passiva in modo che un computer fornisca risorse di backup per l'altro.

Servizi di integrazione Azure

App per la logica di Azure si basa su Archiviazione di Azure per archiviare e crittografare automaticamente i dati inattivi. Questa crittografia protegge i dati e consente di soddisfare gli obblighi di sicurezza e conformità dell'organizzazione. Per impostazione predefinita, Archiviazione di Azure usa chiavi gestite da Microsoft per crittografare i dati. Per altre informazioni, vedere Crittografia di Archiviazione di Azure per dati inattivi.

Quando si lavora con Archiviazione di Azure tramite il portale di Azure, tutte le transazioni vengono eseguite tramite HTTPS. È anche possibile usare Archiviazione di Azure usando l'API REST Archiviazione su HTTPS. Per applicare l'uso di HTTPS quando si chiamano le API REST per accedere agli oggetti negli account di archiviazione, abilitare il trasferimento sicuro necessario per l'account di archiviazione.

Configurazione dei dati

La separazione tra la configurazione e il codice diventa importante quando si vogliono spostare le soluzioni di integrazione tra ambienti senza dover ricompilare o riassemblare il codice. Le informazioni di configurazione sono in genere specifiche dell'ambiente, quindi è possibile definire endpoint e altri dettagli che devono essere modificati durante la distribuzione delle soluzioni nel panorama.

BizTalk Server

  • Eseguibile del servizio BIZTalk NT

    Questo eseguibile chiama un file app.config denominato BTSNTSvc.exe.config. Questo file fornisce coppie chiave-valore in modo che sia possibile archiviare informazioni di configurazione testo non crittografate. Tuttavia, prestare attenzione a questo file in base alle considerazioni seguenti:

    • Assicurarsi di replicare attentamente la configurazione in tutti i computer all'interno di un gruppo BizTalk.

    • Le modifiche di configurazione richiedono il riavvio delle istanze host per recuperare i valori più recenti in questo file di configurazione.

    • Eventuali errori di sintassi introdotti in questo file di configurazione impediscono l'avvio e il tempo di inattività delle istanze host.

  • Strumento Enterprise SSO

    È anche possibile usare questo strumento come archivio di configurazione. Gli strumenti della community sono disponibili anche per abilitare la gestione dei dati tramite Enterprise SSO. Successivamente, è possibile accedere a questi dati tramite gli strumenti dell'SDK per recuperare questi dati in fase di esecuzione.

  • Componenti della cache personalizzati

    Questi componenti vengono spesso introdotti in modo da poter risolvere i casi d'uso oltre le coppie chiave-valore. Si supponga, ad esempio, di voler archiviare i dati tabulari in un database di SQL Server e di caricarli in memoria all'avvio di un'istanza host. Questa implementazione consente a BizTalk Server di ottenere queste informazioni in fase di esecuzione eseguendo codice .NET Fx personalizzato. È quindi possibile accedere a questi dati da orchestrazioni, mappe BizTalk e componenti della pipeline personalizzati.

  • Database personalizzato

    I database sono una tecnologia e un linguaggio noti per sviluppatori e amministratori, quindi un database personalizzato è un'altra opzione comune per l'archiviazione dei dati di configurazione dell'applicazione.

  • Motore regole di business (BRE)

    Anche se non è un caso d'uso principale, il bre può fungere anche da archivio di configurazione. Indipendentemente dal fatto che il motore venga chiamato da un componente di orchestrazione o pipeline, è possibile definire informazioni specifiche dell'ambiente nei criteri bre e quindi distribuire i criteri corrispondenti nell'ambiente pertinente. In fase di esecuzione, un componente di orchestrazione o pipeline può accedere e usare queste informazioni nelle funzioni downstream, ad esempio mappe o in situazioni di routing.

  • File di configurazione personalizzato

    È possibile usare file di configurazione personalizzati (con estensione config) per archiviare i dati di configurazione dell'applicazione, ma questo approccio non è comune perché è probabile che sia necessario mantenere un percorso statico e fisso per questi file in tutti gli ambienti.

  • Registro di sistema di Windows

    È possibile usare il Registro di sistema di Windows come opzione valida per archiviare i valori di configurazione dell'applicazione. Questo Registro di sistema è un database gerarchico centrale usato dai sistemi operativi Microsoft Windows per archiviare le informazioni necessarie per configurare il sistema per uno o più utenti, applicazioni e dispositivi hardware. Il Registro di sistema contiene gli elementi di base seguenti: hive, chiavi e valori. Tuttavia, la gestione dei valori archiviati nel Registro di sistema può risultare difficile in ambienti di grandi dimensioni con più registri e la difficoltà di eseguire il backup delle singole impostazioni dell'applicazione.

Servizi di integrazione Azure

  • Insieme di credenziali chiave di Azure

    Questo servizio archivia e protegge le chiavi crittografiche e altri segreti usati dalle applicazioni e dai servizi cloud. Poiché la gestione sicura delle chiavi è essenziale per proteggere i dati nel cloud, usare Azure Key Vault per crittografare e archiviare chiavi e segreti, ad esempio le password.

  • Configurazione app di Azure

    Questo servizio gestisce centralmente le impostazioni dell'applicazione e i flag di funzionalità. È possibile archiviare le configurazioni per tutte le app di Azure in una posizione universale ospitata. Gestire le configurazioni in modo efficace e affidabile in tempo reale e senza influire sui clienti evitando ridistribuzioni dispendiose in termini di tempo. app Azure Configurazione è stata creata per velocità, scalabilità e sicurezza.

  • Azure Cosmos DB

    Questo servizio è un database NoSQL completamente gestito per lo sviluppo di app moderne con tempi di risposta in millisecondi a cifra singola più scalabilità automatica e immediata che garantiscono velocità su qualsiasi scala. È possibile caricare i dati di configurazione in Azure Cosmos DB e quindi accedere ai dati usando il connettore Azure Cosmos DB in App per la logica di Azure.

  • Azure Table Storage

    Questo servizio offre un'altra funzionalità di archiviazione per mantenere i dati di configurazione a un costo basso. È possibile accedere facilmente a questi dati usando il connettore azure Table Archiviazione in App per la logica di Azure. Per altre informazioni, vedere Tabella di Azure Archiviazione.

  • Caching personalizzato

    È anche possibile implementare soluzioni di memorizzazione nella cache personalizzate con Azure Integration Services. Gli approcci più diffusi includono l'uso dei criteri di memorizzazione nella cache in Azure Gestione API e cache di Azure per Redis.

  • Database personalizzato

    I database sono una tecnologia e un linguaggio noti per sviluppatori e amministratori, quindi un database personalizzato è un'altra opzione comune per l'archiviazione dei dati di configurazione dell'applicazione.

Elaborazione di file di grandi dimensioni

La sezione seguente descrive le opzioni per la gestione di file di grandi dimensioni in BizTalk Server e Azure Integration Services.

BizTalk Server

Per gestire l'elaborazione di file di grandi dimensioni, BizTalk Server include ottimizzazioni basate sui profili seguenti:

  • Solo routing dei messaggi

    Se si usa BizTalk Server solo per il routing dei messaggi in base alle proprietà dei messaggi alzati di livello, i messaggi vengono trasmessi al database MessageBox usando l'interfaccia XmlReader .NET. BizTalk Server non carica singole parti del messaggio in memoria, quindi in questo scenario gli errori di memoria insufficiente non sono un problema. Tuttavia, la considerazione principale è la quantità di tempo necessaria per scrivere messaggi di grandi dimensioni (oltre 100 MB) nel database MessageBox. Il team di sviluppo di BizTalk Server ha testato correttamente l'elaborazione dei messaggi fino a 1 GB quando esegue solo il routing. Per altre informazioni, vedere Ottimizzazione delle prestazioni della pipeline.

  • Trasformazioni di dati con mappe

    Quando BizTalk Server trasforma un documento usando una mappa, questa operazione potenzialmente a elevato utilizzo di memoria passa il messaggio alla classe XslCompiledTransform .NET, che carica il foglio di stile XSL. Al termine dell'operazione di caricamento, più thread possono chiamare simultaneamente il metodo Transform. Per altre informazioni, vedere Classe XslCompiledTransform.

    BizTalk Server migliora significativamente la gestione della memoria per documenti di grandi dimensioni implementando una soglia di dimensioni dei messaggi configurabili per il caricamento di documenti in memoria durante le trasformazioni. Per impostazione predefinita, la soglia delle dimensioni del messaggio è 1 MB. Per qualsiasi messaggio con dimensioni inferiori a questa soglia, BizTalk Server gestisce il messaggio all'interno della memoria. Per ridurre i requisiti di memoria per qualsiasi messaggio con dimensioni superiori a questa soglia, BizTalk Server memorizza nel buffer il messaggio nel file system.

Servizi di integrazione Azure

Esistono alcune differenze fondamentali tra l'elaborazione di file di grandi dimensioni con una piattaforma middleware locale, ad esempio BizTalk Server e un'offerta PaaS, ad esempio App per la logica di Azure. Ad esempio, esaminare attentamente scenari di messaggi di grandi dimensioni per trovare la soluzione corretta perché esistono modi potenzialmente diversi per risolvere questo problema in un ambiente cloud moderno.

Limiti delle dimensioni dei file

In Azure esistono limiti relativi alle dimensioni dei file per garantire esperienze coerenti e affidabili. Per convalidare lo scenario, assicurarsi di esaminare la documentazione relativa ai limiti del servizio per App per la logica di Azure. Alcuni connettori supportano la suddivisione in blocchi dei messaggi per i messaggi che superano il limite di dimensioni del messaggio predefinito, che varia in base al connettore. La suddivisione in blocchi dei messaggi funziona suddividendo un messaggio di grandi dimensioni in messaggi più piccoli.

App per la logica di Azure non è l'unico servizio con limiti di dimensioni dei messaggi. Ad esempio, bus di servizio di Azure ha anche limiti di questo tipo. Per altre informazioni sulla gestione di messaggi di grandi dimensioni in bus di servizio di Azure, vedere Supporto di messaggi di grandi dimensioni.

Modello di controllo delle attestazioni

Per evitare limitazioni relative alle dimensioni dei file, è possibile implementare il modello di controllo attestazione, che funziona suddividendo un messaggio di grandi dimensioni in un controllo attestazioni e in un payload. Si invia il controllo dell'attestazione alla piattaforma di messaggistica e si archivia il payload in un servizio esterno. In questo modo, è possibile elaborare messaggi di grandi dimensioni, mentre si protegge il bus di messaggi e il client dall'overload. Questo modello consente anche di ridurre i costi perché l'archiviazione è in genere più economica rispetto alle unità di risorsa usate dalla piattaforma di messaggistica.

Azure Data Factory

Azure Data Factory offre un'altra opzione per la gestione di file di grandi dimensioni. Questo servizio è l'offerta ELT di Azure per l'integrazione e la trasformazione dei dati serverless scalabili con un'esperienza visiva senza codice per la creazione intuitiva e il monitoraggio e la gestione a riquadro singolo. È anche possibile trasferire in modalità lift-and-shift i pacchetti di SQL Server Integration Services (SSIS) esistenti in Azure ed eseguirli con compatibilità completa in Azure Data Factory. SSIS Integration Runtime offre un servizio completamente gestito, quindi non è necessario preoccuparsi della gestione dell'infrastruttura. Per altre informazioni, vedere Trasferire in modalità lift-and-shift i carichi di lavoro di SQL Server Integration Services nel cloud.

Nelle architetture locali, SSIS è stata un'opzione comune per la gestione del caricamento di file di grandi dimensioni nei database. Come equivalente al cloud per tale architettura, Azure Data Factory può gestire la trasformazione e lo spostamento di set di dati di grandi dimensioni in varie origini dati, ad esempio file system, database, SAP, Archiviazione BLOB di Azure, Azure Esplora dati, Oracle, DB2, Amazon RDS e altro ancora. Quando si hanno requisiti di elaborazione dati di grandi dimensioni, prendere in considerazione l'uso di Azure Data Factory come opzione migliore per App per la logica di Azure e bus di servizio di Azure.

Monitoraggio e avvisi

BizTalk Server

  • Monitoraggio integrità BizTalk

    Questo strumento è uno snap-in MMC che è possibile usare per monitorare l'integrità degli ambienti BizTalk Server ed eseguire attività di manutenzione. Le funzionalità includono report mbV (MsgBox Viewer), attività dello strumento Terminator, notifiche tramite posta elettronica, raccolta di report e integrazione perfmon .

  • Console di Amministrazione istration bizTalk

    Questo strumento è anche uno snap-in MMC per consentire agli amministratori di individuare errori, istanze sospese, transazioni attualmente in corso di ripetizione, stato e altro ancora. L'esperienza degli strumenti è molto reattiva perché è necessario aggiornare costantemente la console per esaminare le informazioni più recenti.

  • BizTalk360

    Soluzione Web esterna che fornisce il controllo totale sull'ambiente BizTalk Server. Questo singolo strumento offre funzionalità di operazioni, monitoraggio e analisi per BizTalk Server.

Servizi di integrazione Azure

  • Monitoraggio di Azure

    Per monitorare le risorse di Azure, è possibile usare questo servizio e la funzionalità Log Analytics come soluzione completa per raccogliere, analizzare e agire sui dati di telemetria dagli ambienti cloud e locali.

  • In App per la logica di Azure sono disponibili le opzioni seguenti:

    • Per i flussi di lavoro delle app per la logica a consumo, è possibile installare la soluzione di gestione delle app per la logica (anteprima) nella portale di Azure e configurare i log di Monitoraggio di Azure per raccogliere i dati di diagnostica. Dopo aver configurato l'app per la logica per inviare tali dati a un'area di lavoro Log Analytics di Azure, i flussi di telemetria vengono trasmessi a dove la soluzione di gestione delle app per la logica può fornire visualizzazioni sull'integrità. Per altre informazioni, vedere Configurare i log di Monitoraggio di Azure e raccogliere i dati di diagnostica per App per la logica di Azure. Con la diagnostica abilitata, è anche possibile usare Monitoraggio di Azure per inviare avvisi basati su tipi di segnale diversi, ad esempio quando un trigger o un'esecuzione non riesce. Per altre informazioni, vedere Monitorare lo stato di esecuzione, esaminare la cronologia dei trigger e configurare gli avvisi per App per la logica di Azure.

    • Per i flussi di lavoro delle app per la logica Standard, è possibile abilitare Application Insights alla creazione di risorse dell'app per la logica per inviare la registrazione diagnostica e le tracce dai flussi di lavoro dell'app per la logica. In Application Insights è possibile visualizzare una mappa delle applicazioni per comprendere meglio le caratteristiche di prestazioni e integrità delle interfacce. Application Insights include anche funzionalità di disponibilità per configurare test sintetici che chiamano in modo proattivo gli endpoint e quindi valutano la risposta per codici di stato o payload HTTP specifici. In base ai criteri configurati, è possibile inviare notifiche agli stakeholder o chiamare un webhook per altre funzionalità di orchestrazione.

  • Serverless 360 è una soluzione esterna di Kovai che fornisce monitoraggio e gestione tramite il mapping dei servizi di Azure, ad esempio App per la logica di Azure, bus di servizio di Azure, Azure Gestione API e Funzioni di Azure. È possibile rielaborare i messaggi usando code di messaggi non recapitabili in bus di servizio di Azure, abilitare la riparazione automatica per risolvere interruzioni intermittenti del servizio e configurare il monitoraggio proattivo tramite transazioni sintetiche.

    È possibile configurare regole di monitoraggio personalizzate e visualizzare i log in un'esperienza del portale. È possibile inviare notifiche tramite vari canali, ad esempio posta elettronica, Microsoft Teams e ServiceNow. Per determinare visivamente l'integrità delle interfacce, sono disponibili le mappe dei servizi.

Monitoraggio delle attività aziendali

La sezione seguente descrive le opzioni per monitorare e raccogliere dati di telemetria per i carichi di lavoro in BizTalk Server e Azure Integration Services.

BizTalk Server

BizTalk Server include una funzionalità denominata Business Activity Monitoring (BAM) che consente agli sviluppatori e agli analisti aziendali di definire profili di rilevamento che possono essere applicati alle orchestrazioni. Man mano che i messaggi passano attraverso le porte di ricezione e invio, gli attributi dei dati vengono acquisiti e archiviati in un database BAM. L'implementazione personalizzata è disponibile anche tramite un'API Fx .NET.

Servizi di integrazione Azure

Anche se in Azure non esiste alcuna funzionalità equivalente di monitoraggio delle attività aziendali, è possibile creare una soluzione personalizzata usando funzionalità come Application Insights o altre piattaforme dati. Durante l'esecuzione del flusso di lavoro, è possibile instrumentare il codice o la configurazione per inviare informazioni pertinenti a questi archivi dati in cui è possibile eseguire analisi e visualizzazioni aggiuntive usando Power BI. Per altre informazioni sugli investimenti futuri in questo settore, vedere la sezione Roadmap più avanti in questa guida.

Un'altra opzione consiste nel fatto che è possibile usare una soluzione esterna di Kovai denominata Serverless 360. Oltre alla piattaforma di monitoraggio, è possibile usare la funzionalità di monitoraggio delle attività aziendali che fornisce il rilevamento end-to-end per i processi aziendali tra integrazioni native del cloud e ibride. Questa funzionalità include un connettore gestito che gli sviluppatori possono usare per instrumentare il codice e acquisire dati aziendali importanti. Amministrazione istrator possono successivamente creare dashboard e condividerli con gli analisti aziendali.

Rilevamento

La sezione seguente descrive le opzioni per tenere traccia degli artefatti per il monitoraggio delle prestazioni e l'analisi dell'integrità in BizTalk Server e Azure Integration Services.

BizTalk Server

  • Rilevamento messaggi

    Gli amministratori di BizTalk Server possono usare il rilevamento del corpo dei messaggi per indicare quando rendere persistenti i corpi dei messaggi nell'archiviazione a scopo di risoluzione dei problemi e controllo. Il rilevamento dei messaggi è un'operazione costosa dalle prospettive di prestazioni e archiviazione, quindi usare questa funzionalità in modo selettivo per evitare problemi di prestazioni. Quando si abilita il rilevamento del corpo del messaggio nelle porte di ricezione e invio, BizTalk Server copia i dati nel database di rilevamento BizTalk (BizTalkDTADb) usando il processo di SQL Server Agent denominato TrackedMessages_Copy_<message-box-name>.

    Diagram showing orchestration tracking in BizTalk Server.

    È possibile applicare il rilevamento a quasi tutti gli artefatti di BizTalk Server, incluse orchestrazioni, pipeline, porte di ricezione, porte di trasmissione, schemi e regole business. Queste opzioni sono abilitate o disabilitate in fase di esecuzione senza influire sul codice (soluzione) o richiedere un riavvio.

  • Health and Activity Tracking (HAT)

    Anche se lo strumento HAT è stato rimosso da BizTalk Server a partire dall'edizione 2009, la funzionalità esiste ancora all'interno di BizTalk Amministrazione istration Console. Amministrazione istrator può cercare i dati tramite l'interfaccia Nuova query all'interno dell'esperienza Panoramica del gruppo. È possibile personalizzare le query in base a criteri diversi, tra cui il tipo di evento, il nome della porta, l'URI, il nome dello schema e altro ancora. Se si desidera esaminare i corpi dei messaggi spostati attraverso una porta di ricezione o trasmissione, è possibile accedere a queste informazioni, purché sia stato abilitato il rilevamento a livello di porta. Per altre informazioni, vedere Rilevamento dell'integrità e dell'attività.

  • Integrazione con Application Insights e Hub eventi di Azure

    A partire da BizTalk Server 2016 Feature Pack 1, è possibile pubblicare dati di telemetria in Application Insights in Monitoraggio di Azure o in Hub eventi di Azure. Questo approccio evita problemi di capacità del disco di SQL Server, in modo da poter usare archivi dati elastici basati sul cloud, ad esempio Application Insights, Log Analytics e cronologia di esecuzione in App per la logica di Azure.

Servizi di integrazione Azure

App per la logica di Azure fornisce una cronologia di esecuzione avanzata in modo che gli sviluppatori e gli analisti del supporto possano esaminare l'azione in base ai dati di telemetria delle azioni, inclusi tutti gli input elaborati e gli output. Per proteggere i dati sensibili, è possibile abilitare input e output sicuri per le singole azioni nei flussi di lavoro. Questa funzionalità offusca o nasconde i dati nei log e nelle cronologie di esecuzione del flusso di lavoro per evitare perdite.

Oltre all'offuscamento dei dati, è possibile usare le regole di controllo degli accessi in base al ruolo di Azure per proteggere l'accesso ai dati. Il controllo degli accessi in base al ruolo di Azure include due ruoli predefiniti specifici per App per la logica di Azure, ovvero Collaboratore app per la logica e Operatore app per la logica.

Oltre al controllo degli accessi in base al ruolo di Azure, è anche possibile limitare l'accesso alla cronologia di esecuzione in App per la logica di Azure in base all'intervallo di indirizzi IP.

Hosting

La sezione seguente descrive le opzioni di hosting per BizTalk Server e Azure Integration Services.

BizTalk Server

BizTalk Server 2020 supporta le piattaforme e i prodotti Microsoft seguenti:

  • Windows Server 2019, Windows Server 2016 e Windows 10
  • Visual Studio 2019 Enterprise e Visual Studio 2019 Professional
  • SQL Server 2019, SQL Server 2017 e SQL Server 2016 SP2
  • Office 2019 e Office 2016

È possibile installare ed eseguire BizTalk Server nel proprio hardware, in una macchina virtuale locale o in macchine virtuali di Azure. Le macchine virtuali di Azure offrono la flessibilità di virtualizzazione per un'ampia gamma di soluzioni di elaborazione con supporto per BizTalk Server, Windows Server, SQL Server e altro ancora. Tutte le macchine virtuali di generazione corrente includono il bilanciamento del carico e la scalabilità automatica senza costi aggiuntivi.

Servizi di integrazione Azure

App per la logica di Azure
  • Piani di hosting

    Nell'App per la logica di Azure a tenant singolo, un'app per la logica Standard è simile a una funzione di Azure o a un'app Web in cui è possibile usare un singolo piano di servizio flusso di lavoro per ospitare più app per la logica Standard. Questa somiglianza significa che non è necessario distribuire tutti i flussi di lavoro in una singola risorsa dell'app per la logica Standard. È invece possibile organizzare questi flussi di lavoro in gruppi logici (app per la logica) per semplificare la gestione di altri aspetti della soluzione. Questo approccio consente di sfruttare al meglio il piano di servizio flusso di lavoro e le applicazioni a prova di futuro, che è possibile implementare in modo che possano essere ridimensionate singolarmente.

    Un'app per la logica Standard include i piani tariffari seguenti: WS1, WS2 e WS3. A livello funzionale, ogni livello offre le stesse funzionalità. I requisiti per il calcolo e la memoria sono ottimali per lo scenario, ad esempio:

    Piano tariffario CPU virtuale (vCPU) Memoria (GB)
    WS1 1 3.5
    WS2 2 7
    WS3 4 14

    Per le informazioni più recenti, vedere Piani tariffari nel modello Standard.

  • Disponibilità e ridondanza

    In Azure le zone di disponibilità offrono resilienza, disponibilità distribuita e scalabilità della zona attiva-attiva. Per aumentare la disponibilità per i carichi di lavoro dell'app per la logica, è possibile abilitare il supporto della zona di disponibilità, ma solo quando si crea l'app per la logica. Sono necessarie almeno tre zone di disponibilità separate in qualsiasi area di Azure che supporta e abilita la ridondanza della zona. La piattaforma App per la logica di Azure distribuisce queste zone e i carichi di lavoro delle app per la logica in queste zone. Questa funzionalità è un requisito fondamentale per l'abilitazione di architetture resilienti e la disponibilità elevata in caso di errori del data center in un'area. Per altre informazioni, vedere Creare soluzioni per la disponibilità elevata usando le zone di disponibilità.

  • Ambiente isolato e dedicato

    Per le app per la logica Standard, è possibile selezionare un ambiente del servizio app (A edizione Standard) v3 per l'ambiente di distribuzione. Con un ambiente A edizione Standard v3, si ottiene un ambiente completamente isolato e dedicato per eseguire applicazioni su larga scala con prezzi prevedibili. Si paga solo per il piano A edizione Standard servizio app, indipendentemente dal numero di app per la logica create ed eseguite.

Bus di servizio di Azure

bus di servizio di Azure offre vari piani tariffari in modo da poter scegliere il livello migliore che soddisfi le proprie esigenze. Per gli ambienti aziendali, i clienti scelgono in genere livelli Premium o Standard. Per i clienti che necessitano di velocità effettiva elevata con prestazioni prevedibili e supporto per la rete avanzata, il livello Premium è un'opzione migliore. In alternativa, se è possibile accettare la velocità effettiva delle variabili e l'elaborazione di messaggi più piccoli, il livello Standard potrebbe avere più senso. La tabella seguente riepiloga entrambi i livelli:

Livello Premium Livello Standard
Velocità effettiva elevata Velocità effettiva variabile
Prestazioni prevedibili Latenza variabile
Prezzi fissi Prezzi variabili con pagamento in base al consumo
Possibilità di aumentare e ridurre il carico di lavoro Non disponibile
Dimensioni del messaggio fino a 100 MB. Vedere Supporto di messaggi di grandi dimensioni. Dimensioni del messaggio fino a 256 KB

Per le informazioni più recenti, vedere bus di servizio livelli di messaggistica Premium e Standard.

Gestione API di Azure

Azure Gestione API offre diversi piani tariffari in modo da poter scegliere il livello migliore che soddisfi le proprie esigenze. Ogni livello ha le proprie funzionalità e sono denominati Consumo, Sviluppatore, Basic, Standard e Premium.

Le funzionalità di questi livelli variano dall'integrazione di Microsoft Entra, dal supporto della rete virtuale di Azure, dalla cache predefinita, dai gateway self-hosted e altro ancora. Per altre informazioni su questi livelli e sulle relative funzionalità, vedere Confronto basato sulle funzionalità dei livelli di azure Gestione API.

Azure Data Factory

Azure Data Factory offre diversi modelli di determinazione dei prezzi in modo da poter scegliere il modello migliore che soddisfi le proprie esigenze. Le opzioni variano in base al tipo di runtime, che include il runtime di integrazione di Azure, il runtime di integrazione rete virtuale gestita di Azure e il runtime di integrazione self-hosted. All'interno di ogni offerta di runtime, prendere in considerazione il supporto per orchestrazioni, attività di spostamento dei dati, attività della pipeline e attività della pipeline esterna. Per altre informazioni sulla pianificazione dei costi e sui prezzi, vedere Pianificare la gestione dei costi per Azure Data Factory e Informazioni sui prezzi di Data Factory tramite esempi

Distribuzione

BizTalk Server

La creazione di pacchetti di distribuzione nativa in BizTalk Server si basa su un file di Microsoft Installer (MSI) combinato con una configurazione dell'ambiente, o associazioni, file. Questi due file creano una separazione tra l'installazione dei componenti, che vengono distribuiti nei repository BizTalk Server seguenti e definisce le impostazioni a livello di porta e pipeline, inclusi endpoint, segreti, configurazione della pipeline e altri.

  • Database di gestione
  • Cartelle locali di BizTalk Server
  • .NET Global Assembly Cache

Anche se questo processo può rivelarsi efficace, è anche necessario gestire ogni singola configurazione di ambiente separatamente dal codice. Il progetto open source BizTalk Deployment Framework (BTDF) offre una soluzione per questo problema. Con questo strumento, è possibile gestire la configurazione dell'ambiente come parte della soluzione BizTalk Server usando un file di associazione con token, creato in fase di progettazione e una matrice di token, creata come file di Excel, per ogni ambiente.

Il processo di compilazione crea quindi un file MSI unificato e con controllo delle versioni. Questo file supporta la distribuzione dei componenti e la configurazione dell'ambiente dallo stesso pacchetto, che consente di controllare meglio la versione della soluzione che si vuole implementare in ambienti diversi.

Il supporto per un pacchetto BTDF in una pipeline CI/CD (Continuous Integration-Continuous Deployment) è disponibile in BizTalk Server 2020, che include questa funzionalità introdotta con i Feature Pack di BizTalk Server 2016. È possibile usare questa funzionalità e la piattaforma Azure DevOps per semplificare la distribuzione automatica per le soluzioni BizTalk Server in ambienti diversi.

Servizi di integrazione Azure

Quando si distribuisce un componente o una soluzione di Azure Integration Services in Azure, è necessario gestire gli elementi seguenti:

  • Risorse di Azure che fungono da contenitori o dall'infrastruttura per le soluzioni da distribuire, ad esempio l'istanza Gestione API, la risorsa dell'app per la logica Standard, lo spazio dei nomi bus di servizio o l'argomento Griglia di eventi

  • Logica effettiva implementata da ogni componente, ad esempio API, flussi di lavoro, code e sottoscrizioni

  • Configurazione specifica dell'ambiente associata a ogni componente, ad esempio autorizzazioni, segreti, avvisi e così via

Quando si mantiene separata la definizione dell'infrastruttura dal codice, è possibile considerare la definizione dell'infrastruttura come un'altra parte di codice che è possibile aggiornare, archiviare in modo sicuro in un repository di controllo del codice sorgente e attivare una distribuzione quando cambia la definizione. Questa procedura, comunemente nota come Infrastruttura come codice (IaC), migliora la qualità dell'ambiente perché è possibile creare versioni per ogni ambiente e tenere traccia delle modifiche apportate al controllo del codice sorgente.

Azure Integration Services supporta IaC offrendo la possibilità di creare risorse dell'infrastruttura usando i modelli di Gestione risorse di Azure. Anche se i modelli arm possono sembrare complessi da comprendere e implementare come soluzione unificata, è possibile usare strumenti di astrazione, ad esempio Bicep, Terraform o Pulumi, che offrono un'esperienza simile al codice per la creazione della definizione dell'infrastruttura. Sebbene questi strumenti forniscano livelli di astrazione sui modelli arm, gli strumenti generano infine modelli di Resource Manager e possono distribuirli automaticamente.

Con l'infrastruttura implementata, è possibile distribuire la logica che implementa i flussi di lavoro end-to-end. Poiché Azure Integration Services offre una raccolta di strumenti per implementare i flussi di lavoro di integrazione, è necessario distribuire ogni componente. Per le soluzioni create con Azure Integration Services, le pipeline CI/CD sono in genere basate sulla distribuzione di un'orchestrazione dei componenti. I tecnici DevOps possono usare azioni predefinite che astraggono le attività di distribuzione oppure usano azioni generiche che eseguono comandi dell'interfaccia della riga di comando o script di automazione, ad esempio PowerShell e Bash. Nella maggior parte dei casi, i tecnici personalizzano le pipeline in base alle esigenze dell'applicazione, esaminano le linee guida della documentazione ufficiale e usano repository di esempio come punto di partenza.

Il processo per preparare ogni componente per la distribuzione in genere esegue i passaggi seguenti in considerazione:

  • Fase di integrazione continua

    1. Ottenere la versione più recente del codice sorgente.

    2. Preparare il codice con la configurazione specifica dell'ambiente.

      I dettagli di questo passaggio dipendono dal supporto di ogni tecnologia per l'inserimento esterno di variabili di ambiente. La premessa di base è che le informazioni di configurazione basate sull'ambiente, ad esempio stringa di connessione e riferimenti a risorse esterne, vengono astratte per fare riferimento a un repository delle impostazioni dell'applicazione. In questo scenario, è quindi possibile archiviare i riferimenti che possono esistere come testo non crittografato direttamente nel repository delle impostazioni dell'applicazione, ma è necessario archiviare valori sensibili, ad esempio segreti, come puntatori di riferimento alle voci in un archivio segreti, ad esempio un insieme di credenziali delle chiavi di Azure.

      App per la logica di Azure rende possibile questo approccio per una risorsa dell'app per la logica Standard supportando i riferimenti al repository delle impostazioni dell'applicazione, che è quindi possibile eseguire il mapping delle coppie nome-valore alle voci nell'insieme di credenziali delle chiavi.

      Per Azure Gestione API, è possibile ottenere risultati simili usando una configurazione dei valori dei nomi, che supporta anche Azure Key Vault.

    3. Creare un pacchetto del codice per la distribuzione in vari ambienti.

  • Fase di distribuzione continua

    1. Distribuire il codice in pacchetto nell'ambiente di destinazione.

    2. Aggiornare il repository delle impostazioni dell'applicazione con i valori di ambiente corretti, come testo non crittografato o riferimenti alle voci nell'insieme di credenziali delle chiavi.

    3. Aggiornare le autorizzazioni necessarie che dipendono dal codice.

    4. Preparare l'applicazione per l'esecuzione, se necessario.

Corrispondenza delle funzionalità

La tabella e il diagramma seguenti illustrano approssimativamente come le risorse, gli artefatti, le funzionalità e le funzionalità corrispondano tra BizTalk Server rispetto ad Azure Integration Services, anche se la corrispondenza non sarà uno-a-uno. Anche se Azure Integration Services è una piattaforma chiave per i carichi di lavoro di integrazione, assicurarsi di prendere in considerazione tutte le funzionalità di Azure disponibili nel suo complesso.

Funzione o funzionalità BizTalk Server Azure
Orchestrazioni - Orchestrazione di BizTalk Server
- Codice C# (classe helper o servizio Web)
- flusso di lavoro App per la logica di Azure
- Funzioni di Azure'app per le funzioni
- App per le API di Azure
Pipeline - Pipeline di BizTalk Server
- Componenti della pipeline
- flussi di lavoro App per la logica di Azure (come pipeline)
- Azure Gestione API (come pipeline)
- Funzioni di Azure o app per le API di Azure
Trasferimento dei messaggi -Messagebox
- Promozioni delle proprietà
-Filtri
- bus di servizio di Azure code e argomenti (intestazioni dei messaggi, proprietà dei messaggi e sottoscrizioni)
- Griglia di eventi di Azure o azure Gestione API
- SQL Server o cache di Azure per Redis
Connettività dell'applicazione - Adattatori personalizzati e predefiniti di BizTalk Server
- Internet Information Services (IIS) e Azure Gestione API (funzionalità ibride)
- connettori App per la logica di Azure
- Azure Gestione API (come connettori)
- Funzioni di Azure o app per le API di Azure
Riferimenti incrociati xref_ * tabelle nel database di gestione BizTalk (BizTalkMgmtDb) - Funzioni di Azure
- SQL Server
- Personalizzato
Schemi (XSD) - Schemi di BizTalk Server
- Schemi di file XML, JSON e flat
- App per la logica di Azure (consumo) e account di integrazione di Azure
- account Funzioni di Azure e Archiviazione di Azure
- App per la logica di Azure e app per le API di Azure
- App per la logica di Azure (Standard)
Mappe - BizTalk Mapper
- Mappe XSLT
- Azure Gestione API (funzionalità ibride)
- App per la logica di Azure (consumo) e account di integrazione di Azure (mappe XSLT, Liquid)
- account Funzioni di Azure e Archiviazione di Azure
- App per la logica di Azure e l'app per le API di Azure
- App per la logica di Azure (Standard)
Regole di business Motore regole business di BizTalk Server - Funzioni di Azure
- SQL Server
- Database personalizzato
Monitoraggio delle attività aziendali Monitoraggio delle attività business di BizTalk Server - SQL Server
- Monitoraggio di Azure (Application Insights)
- Power BI
EDI - Funzionalità predefinite di BizTalk Server
- Parti, partner, contratti, AS2, X12, EDIFACT
App per la logica di Azure e l'account di integrazione di Azure (partner, contratti, AS2, X12, EDIFACT)
HL7, RosettaNet e SWIFT Acceleratori BizTalk Server per HL7, RosettaNet e SWIFT - App per la logica di Azure, rosettanet e connettori SWIFT e account di integrazione di Azure
- Azure Gestione API per FHIR (HL7)
- Azure Blueprint, che abilita la conformità SWIFT CSP in Azure
Segreti Enterprise Single Sign-On (SSO) - Azure Key Vault
- SQL Server
- Configurazione dell'applicazione
Sicurezza e governance - Enterprise Single Sign-On (SSO)
- Applicazioni affiliate SSO
- Active Directory
- Firma dei certificati
- Autenticazione di sicurezza IIS
- Sicurezza di rete
- Microsoft Entra ID
- Sicurezza di rete di Azure
- Controllo degli accessi in base al ruolo di Azure
- Attestazioni, token
- Criteri di accesso condiviso
Configurazione dei dati - File di configurazione
- Configurazione dell'applicazione SSO aziendale
- Componenti della cache personalizzati
- Database personalizzato
- Motore regole business
- Registro di sistema di Windows
- Azure Key Vault
- Configurazione app Azure
- Azure Cosmos DB
- Archiviazione tabelle di Azure
- configurazione App per la logica di Azure (Standard)
- configurazione Funzioni di Azure
- Azure Gestione API valori denominati e back-end
- SQL Server
- Memorizzazione nella cache personalizzata
- Database personalizzato
Distribuzione - File di associazione di BizTalk Server - Pipeline di Azure DevOps
- Script Bicep
- Terraform
Rilevamento - Funzionalità di rilevamento di BizTalk Server (porte di ricezione, porte di trasmissione, pipeline, orchestrazioni)
- Rilevamento IIS
- Azure Gestione API'analisi predefinita (funzionalità ibride)
- App per la logica di Azure cronologia di esecuzione e proprietà rilevate
- account Archiviazione di Azure
- Monitoraggio di Azure (Application Insights)
- Azure Gestione API'analisi predefinita
- Soluzione personalizzata, ad esempio, Hub eventi di Azure più Funzioni di Azure più SQL Server e Azure Esplora dati
Monitoraggio - Console di Amministrazione istration bizTalk
- Monitoraggio integrità BizTalk
Monitoraggio di Azure (Application Insights, Log Analytics)
Operazioni - Console di Amministrazione istration di BizTalk Server
- Pipeline di Azure DevOps
- MSI, PowerShell
- Framework di distribuzione BizTalk
- portale di Azure
- Monitoraggio di Azure
- Modelli di Azure Resource Manager
- Pipeline di Azure DevOps
- PowerShell, interfaccia della riga di comando, Bicep

Screenshot showing matchup between components from BizTalker Server and Azure Integration Services for the Enterprise Integration Platform.

Mappa stradale

Per soddisfare le esigenze dei clienti BizTalk nella migrazione dei carichi di lavoro e delle interfacce ad Azure Integration Services, Microsoft attualmente assegna le priorità agli investimenti seguenti:

Intervallo di tempo Investimenti per le funzionalità
A breve termine - Supporto di XSLT + .NET Framework (anteprima pubblica)
- Codificatore e decodificatore SWIFT MT (anteprima pubblica)
- Chiamare codice .NET Framework personalizzato da App per la logica di Azure (Standard)
Medio termine - Miglioramenti dell'account di integrazione ed EDI
- Supporto XML nativo
- Supporto WCF e SOAP
- Supporto del motore regole business
Archiviazione Rilevamento degli eventi aziendali

Per rimanere aggiornati sugli investimenti più recenti, sottoscrivere le integrazioni nel blog di Azure - Tech Community.

Passaggi successivi

Sono state apprese altre informazioni sul confronto tra Azure Integration Services e BizTalk Server. Informazioni su come scegliere le funzionalità di Azure migliori per gli scenari. In alternativa, passare alla revisione di approcci e risorse suggeriti, considerazioni sulla pianificazione e procedure consigliate per la migrazione.