Condividi tramite


Perché eseguire la migrazione da BizTalk Server ai Servizi di integrazione di Azure?

Questa guida offre una panoramica delle motivazioni e dei vantaggi, confronti dei prodotti, funzionalità e altre informazioni che consentono di avviare la migrazione da BizTalk Server in locale ai Servizi di integrazione di Azure basati sul cloud. Leggendo questa guida, si troveranno i link ad altre guide che contengono consigli sulla scelta dei servizi più adatti al proprio scenario, oltre che le strategie di migrazione, le considerazioni sulla pianificazione e le procedure consigliate per fornire risultati ottimali.

Motivazioni e vantaggi

Eseguendo la migrazione dei carichi di lavoro di integrazione ai Servizi di integrazione di Azure, sarà possibile ottenere i seguenti vantaggi principali:

Vantaggio Descrizione
Moderna Piattaforma di integrazione distribuita come servizio (iPaaS) I Servizi di integrazione di Azure offrono funzionalità che non erano ancora state concepite quando è stato creato BizTalk Server, ad esempio:

- La capacità 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 capitali significativi per acquisire licenze e infrastrutture, in questo modo si impone la "creazione di picco", generando così inefficienze. I Servizi di integrazione di Azure offrono diversi modelli di prezzi che generalmente consentono di pagare in base all'utilizzo. Sebbene alcuni modelli di prezzi abilitino e forniscano l'accesso a funzionalità più avanzate, si ha la flessibilità di pagare in base al consumo.
Barriera all'ingresso più bassa BizTalk Server è un broker middleware molto potente, tuttavia, imparare a usarlo e diventare esperti richiede molto tempo. I Servizi di integrazione di Azure riducono il tempo richiesto per iniziare, apprendere, compilare e distribuire soluzioni. Ad esempio, App per la logica di Azure include la progettazione grafica che offre un'esperienza senza codice o con poco codice per la creazione di flussi di lavoro dichiarativi.
Connettività SaaS Le API REST stanno diventano standard per l'integrazione delle applicazioni, di conseguenza molte 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 servizi, sistemi e protocolli Microsoft e non Microsoft. In App per la logica di Azure è possibile usare la progettazione del flusso 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 assicura maggiore coerenza quando si autentica l'accesso a questi servizi con OAuth2.
Distribuzioni geografiche multiple Attualmente, Azure offre più di 60 aree annunciate, più di qualsiasi altro provider di servizi cloud; di conseguenza, è possibile scegliere facilmente i data center e le aree che meglio si adattano alle proprie esigenze e ai clienti. Questa copertura consente di distribuire soluzioni in modo coerente in molte aree geografiche e offre opportunità sia dal punto di vista della scalabilità, sia della ridondanza.

Che cosa sono i Servizi di integrazione di Azure?

I Servizi di integrazione di Azure includono i seguenti blocchi predefiniti basati sul cloud, serverless, scalabili e gestiti da Microsoft, per consentire la creazione di soluzioni di integrazione complete ed eseguire la migrazione delle soluzioni BizTalk Server esistenti:

Servizio 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 progettazione grafica dei flussi di lavoro per abilitare microservizi, orchestrazioni API e integrazioni line-of-business. Aumentare la scalabilità e la portabilità automatizzando al contempo i flussi di lavoro business-critical, distribuire ed eseguire Kubernetes ovunque sia possibile.

È possibile creare risorse di app per la logica A consumo o Standard. Un'app per la logica A consumo include un solo flusso di lavoro con stato che viene 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 che vengono eseguiti in App per la logica di Azure in un singolo tenant, Ambiente del servizio app di Azure versione 3 o App per la logica abilitate per Azure Arc.

Per il posizionamento di App per la logica di Azure nei Servizi di integrazione di Azure, questa guida si incentra 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 di 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, vedi Funzioni di Azure.
Azure Data Factory Integrare graficamente tutte le origini dati usando più di 90 connettori predefiniti che non richiedono manutenzione, senza costi aggiuntivi. Si possono costruire facilmente processi di estrazione, trasformazione e caricamento (ETL) e di estrazione, caricamento e trasformazione (ELT) senza codice in un ambiente intuitivo, oppure è possibile scrivere il proprio codice. Per sbloccare le informazioni aziendali, distribuire i dati integrati in 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 i messaggi che usano questo broker di messaggi aziendali altamente affidabile. È possibile ottenere maggiore flessibilità quando si negoziano i messaggi tra client e server con messaggistica FIFO (First-In, First-Out) 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 la 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 affiancati 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à durante un'esperienza di gestione unificata e di osservabilità completa su tutte le API interne ed esterne. Per altre informazioni, vedere Gestione API di Azure.

Diagramma che mostra i servizi per i membri dei Servizi di integrazione di Azure.

Servizi di Azure complementari

Oltre ai servizi descritti in precedenza, Microsoft offre anche i seguenti servizi complementari che offrono funzionalità sottostanti per i Servizi di integrazione di Azure e che probabilmente saranno usati in un progetto di migrazione:

Servizio Descrizione
Archiviazione di Azure Vengono fornite risorse di archiviazione altamente disponibili, 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 utilizzando un'API REST.

I Servizi di integrazione di Azure usano queste funzionalità per archiviare in modo sicuro i dati di configurazione e telemetria quando le transazioni passano 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 di importanza fondamentale per qualsiasi organizzazione che utilizza il cloud. Il controllo degli accessi in base al ruolo di Azure è un sistema di autorizzazione basato su Azure Resource Manager che garantisce una gestione con granularità fine degli accessi delle risorse di Azure. È possibile gestire le persone che possono accedere alle risorse di Azure, le operazioni che possono eseguire con tali risorse e le aree autorizzate per l'accesso. Per altre informazioni, vedere Controllo degli accessi in base al ruolo di Azure.
Azure Key Vault Sono disponibili funzionalità che consentono di risolvere i problemi relativi alla gestione dei segreti, delle chiavi e dei certificati.

I Servizi di integrazione di Azure offrono 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 e pratico. Per altre informazioni, vedere Azure Key Vault.
Criteri di Azure Sono disponibili funzionalità che consentono di applicare gli standard dell'organizzazione e di valutare la conformità in modo scalabile. Grazie al dashboard di conformità si ottiene una visualizzazione aggregata che consente di valutare lo stato complessivo dell'ambiente, con la possibilità di eseguire il drill-down in base alla granularità per risorsa e per criterio.

I Servizi di integrazione di Azure si integrano con Criteri di Azure per implementare in modo efficiente la governance diffusa. Per altre informazioni, vedere Criteri di Azure.
Rete di Azure È disponibile un'ampia gamma di funzionalità di rete, tra cui connettività, servizi di protezione delle applicazioni, servizi di distribuzione delle applicazioni e monitoraggio della rete.

I Servizi di integrazione di Azure utilizzano 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 in streaming multimediale milioni di eventi al secondo da qualsiasi origine, grazie al 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 tratta di implementare una soluzione di rilevamento disaccoppiato in Azure. Per altre informazioni, vedere Hub eventi di Azure.
Database SQL di Azure A un certo punto, per supportare le soluzioni di integrazione, potrebbe essere necessario creare strategie di registrazione e configurazioni personalizzate. Anche se SQL Server viene comunemente usato in locale per questo scopo, database SQL di Azure potrebbe offrire una soluzione praticabile durante la migrazione dei 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à. Le applicazioni moderne, specialmente quelle eseguite nel cloud, hanno generalmente molti componenti che sono distribuiti per natura. La distribuzione delle impostazioni di configurazione tra questi componenti può causare errori difficili da risolvere durante la distribuzione delle applicazioni. Configurazione app consente di archiviare tutte le impostazioni dell'applicazione e di proteggerne gli accessi in un'unica posizione. Per altre informazioni, vedere Configurazione app di Azure.
Monitoraggio di Azure Application Insights, che fa parte di Monitoraggio di Azure, fornisce la gestione delle prestazioni delle applicazioni e il monitoraggio delle app live. 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.
Automazione di Azure Automatizzare le attività di gestione di Azure e orchestrare le azioni tra i sistemi esterni all'interno di Azure. Basato sul flusso di lavoro PowerShell, è possibile utilizzare molte funzionalità di questo linguaggio. Per altre informazioni, vedere Automazione di Azure.

Esperienze sviluppatore supportate

Questa sezione descrive gli strumenti di sviluppo supportati da BizTalk Server e dai Servizi di integrazione di Azure:

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, il prodotto 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 (A 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

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

- Bus di servizio di Azure: portale di Azure e Service Bus Explorer

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

Confronto di BizTalk Server e Servizi di integrazione di Azure

Per confrontare BizTalk Server con i Servizi di integrazione di Azure e spiegare come eseguire la migrazione, è necessario, in primo luogo, fare un riepilogo delle 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 è ormai una piattaforma di integrazione ben consolidata. Al fine di 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 seguenti funzionalità principali:

  • Orchestrazione (flusso aziendale)

    È disponibile la funzionalità che consente di creare ed eseguire orchestrazioni o processi aziendali definiti graficamente.

  • Messaggistica

    È disponibile la funzionalità che consente 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 dati.

Il motore BizTalk Server include i componenti seguenti:

Componente Descrizione
Motore regole di business (BRE) Valuta insiemi di regole complessi.
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 professionisti IT di monitorare un processo aziendale in esecuzione.
Hub gruppo Consente al personale di supporto di gestire il motore e le orchestrazioni in esecuzione.

Funzionamento di BizTalk Server

BizTalk Server si avvale di un'architettura del motore di messaggistica di pubblicazione-sottoscrizione che ha come componente centrale il database MessageBox. MessageBox è responsabile dell'archiviazione di messaggi, proprietà dei messaggi, sottoscrizioni, stati orchestrazione, dati di rilevamento e altre informazioni.

Quando BizTalk Server riceve un messaggio, il server trasmette ed elabora il messaggio tramite una pipeline. Questo passaggio normalizza e pubblica il messaggio su MessageBox. Quindi, BizTalk Server valuta eventuali sottoscrizioni esistenti e determina il destinatario previsto del messaggio, in base alle proprietà del contesto del messaggio. Infine, BizTalk Server indirizza il messaggio al destinatario previsto basandosi su sottoscrizioni o filtri. Il destinatario è un'orchestrazione o una porta di trasmissione, ovvero una destinazione alla quale BizTalk Server invia messaggi o un'origine dalla quale BizTalk Server può ricevere messaggi. BizTalk Server trasmette i messaggi tramite una porta di trasmissione, facendoli passare attraverso una pipeline di trasmissione. La pipeline di trasmissione serializza i messaggi nel formato nativo previsto dal destinatario prima di inviare i messaggi tramite un adapter.

Il database MessageBox include i componenti seguenti:

  • Agente di messaggistica

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

  • Uno o più database SQL Server

    Questi database forniscono l'archivio salvataggi permanenti per messaggi, parti di messaggi, proprietà dei messaggi, sottoscrizioni, stato 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:

Diagramma che mostra il motore di messaggistica di BizTalk Server.

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

Diagramma che mostra il processo di ricezione e archiviazione dei messaggi nel database MessageBox per 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 compilazione di processi aziendali che è possibile eseguire in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

In BizTalk Server le orchestrazioni sono processi aziendali eseguibili che possono effettuare la sottoscrizione per (ricevere) e pubblicare (trasmettere) messaggi tramite il database MessageBox. Le orchestrazioni possono costruire nuovi messaggi e ricevere messaggi usando la sottoscrizione e l'infrastruttura di routing. Quando MessageBox compila le sottoscrizioni per le orchestrazioni, si attiva una nuova istanza (esecuzione 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 di 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 i messaggi, queste porte logiche devono essere associate a una porta fisica, tuttavia questo processo di associazione consiste semplicemente nella configurazione delle sottoscrizioni per il routing dei messaggi.

BizTalk Server offre i seguenti vantaggi di esempio:

  • Incentrato sulla finestra di progettazione (dichiarativo)

    Progettare processi complessi usando strumenti di progettazione intuitivi per implementare modelli e flussi di lavoro la cui implementazione nel codice potrebbe essere complessa.

  • Astrazione con i sistemi finali

    Progettare processi incentrati sui messaggi e non sul sistema finale. Ad esempio, durante lo sviluppo delle soluzioni non è necessario preoccuparsi se si userà un adapter FILE o un adapter FTP. Al contrario, ci si concentra sul tipo di comunicazione, che sia unidirezionale o di richiesta-risposta e sul tipo di messaggio che si desidera elaborare. In seguito, quando si distribuiscono le soluzioni, sarà possibile specificare l'adapter 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 il metodo di programmazione con "blocco predefinito" con la progettazione grafica e operazioni predefinite da centinaia di connettori che richiedono pochissime righe di codice. Un flusso di lavoro di app per la logica inizia con un'operazione di attivazione seguita da una o più operazioni di azione, dove ogni operazione funziona come passaggio logico nel processo di implementazione del flusso di lavoro. Il flusso di lavoro si può avvalere delle azioni per chiamare software, servizi e sistemi esterni. Alcune azioni eseguono attività di programmazione, ad esempio condizionali (istruzioni if), cicli, operazioni sui dati, gestione delle variabili, e altro ancora.

App per la logica di Azure offre i seguenti vantaggi di esempio:

  • Incentrato sulla finestra di progettazione (dichiarativo)

    Progettare processi complessi usando strumenti di progettazione intuitivi per implementare modelli e flussi di lavoro la cui implementazione nel codice potrebbe essere complessa.

  • Flessibile e scalabile

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

  • Si connette 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 possono essere utilizzate 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 Azure e molti altri, oltre che applicazioni o sistemi locali, mainframe, SaaS e API. Se non esiste alcun connettore predefinito per la risorsa alla quale si desidera accedere, è possibile usare l'operazione HTTP generica per comunicare con il servizio, oppure creare un connettore personalizzato.

Componenti riutilizzabili

Le piattaforme di integrazione offrono dei metodi di risoluzione dei problemi coerenti e unificati, che si possono spesso ottenere tramite componenti riutilizzabili. Questa sezione descrive come riutilizzare i componenti in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

  • Orchestrazioni

    È possibile creare e condividere la logica aziendale comune come orchestrazioni in flussi di lavoro diversi, all'interno della stessa applicazione o con più applicazioni. Le orchestrazioni possono essere attivate con il meccanismo di pubblicazione-sottoscrizione nativo in BizTalk Server (in modo disaccoppiato) oppure utilizzando le forme di orchestrazione denominate Chiama orchestrazione per chiamate sincrone o Avvia orchestrazione per chiamate asincrone.

  • Adapter

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

  • Schemi

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

    Sebbene questo passaggio possa sembrare semplice, la gestione delle modifiche agli assembly condivisi potrebbe diventare complessa a causa del concatenamento delle dipendenze. Se l'assembly condiviso richiede un aggiornamento, per installarlo dovranno essere rimossi da BizTalk Server tutti i progetti che fanno riferimento all'assembly condiviso. Tuttavia, per eludere questi vincoli, è possibile implementare il controllo delle versioni degli assembly in cui si distribuisce una nuova versione di uno schema o di schemi condivisi, senza interruzioni per le soluzioni esistenti.

  • Mappe e functoid personalizzati

    Le mappe abilitano la traduzione o la trasformazione di messaggi XML in BizTalk Server. È possibile condividere le mappe, tuttavia, come per gli schemi condivisi, si devono applicare simili precauzioni 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.

    I functoid eseguono calcoli con formule predefinite e valori specifici, denominati argomenti. BizTalk Server fornisce molti functoid che supportano una gamma di operazioni diverse. I functoid personalizzati consentono di allargare la gamma di operazioni disponibili nell'ambiente delle mappe di BizTalk Server.

    Se all'inizio si creano molte mappe, ci si renderà conto che si implementa ripetutamente una logica simile. Di conseguenza, si dovrà dedicare tempo alla gestione di più frammenti di codice equivalenti che, generalmente, si copiano e incollano in diverse posizioni all'interno di una mappa o su varie mappe. Prendere in considerazione la trasformazione di tali frammenti di codice in un functoid personalizzato. In questo modo, si crea il functoid una sola volta e sarà possibile riutilizzarlo in qualsiasi numero di mappe, aggiornando il functoid in un solo punto. Ogni functoid personalizzato viene distribuito come assembly .NET che utilizza classi derivate dallo spazio dei nomi Microsoft.BizTalk.BaseFunctoids. Un assembly può contenere più di un functoid personalizzato.

  • Assembly .NET Fx

    Gli assembly possono essere condivisi tra i progetti BizTalk Server. Dal punto di vista delle dipendenze, questi assembly sono più facili da gestire. Purché non esistano modifiche di rilievo, l'aggiornamento di un assembly .NET Fx richiede l'aggiornamento della DLL nella Global Assembly Cache (GAC), che rende le modifiche automaticamente disponibili per gli altri assembly. In presenza di modifiche di rilievo, è necessario aggiornare anche il progetto dipendente affinché sia possibile adattare le modifiche nell'assembly .NET Fx.

  • Pipeline personalizzate e componenti delle pipeline

    Quando BizTalk Server riceve e invia messaggi, il server potrebbe dover preparare e trasformare i messaggi per l'ingresso e l'uscita, per 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 e decodificatore JSON e un decodificatore MIME o SMIME, e così via.

    Se fosse 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 personalizzati. Un componente della pipeline personalizzato è una classe a.NET che consente di implementare più interfacce BizTalk e quindi usarle nelle diverse fasi di qualunque pipeline personalizzata. Per scrivere codice per un componente di questo tipo è possibile usare C# o Visual Basic per .NET.

  • Criteri Motore regole

    Un criterio Motore regole di business è un altro tipo di artefatto che può essere condiviso tra le applicazioni BizTalk Server distribuite nello stesso Gruppo BizTalk. Se vi sono regole comuni del Motore regole di business, ad esempio correlate al routing dei messaggi, tali regole possono essere gestite in un'unica posizione e condivise tra le applicazioni BizTalk installate. Il Motore regole di business memorizza le regole nella cache, quindi, in caso di aggiornamenti alle regole sarà necessario riavviare il servizio di aggiornamento del Motore regole di business. In caso contrario, le modifiche vengono rilevate al successivo Timeout della cache.

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 l'accesso centralizzato agli artefatti riutilizzabili. Per i flussi di lavoro delle app per la logica A consumo, questi artefatti 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 delle app per la logica Standard, App per la logica di Azure ha introdotto di recente il supporto per la chiamata di assembly .NET Fx da trasformazioni XSLT che non richiede 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, distribuirli in Azure.

  • API

    Le API abilitano le esperienze digitali, rendono i dati e i servizi riutilizzabili e universalmente accessibili, semplificano l'integrazione delle applicazioni e supportano 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.

    In particolare, è possibile riutilizzare le API gestite con Gestione API di Azure, nell'ambito dei Servizi di integrazione di Azure. Una volta aggiunte le API a Gestione API di Azure, il connettore Gestione API può essere utilizzato con i flussi di lavoro delle 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 affinché l'organizzazione possa promuoverne il riutilizzo a livello aziendale ed evitare l'eventuale creazione di connettori ridondanti e non necessari da parte degli sviluppatori. Inoltre, le API personalizzate democratizzano la scelta di chi può usare tali API, invece di lasciare allo sviluppatore il processo di comprensione dei meccanismi di utilizzo di una particolare API.

  • Connettori personalizzati

    Se non esistono connettori predefiniti per le API che si desidera usare, è possibile eseguire il wrapping di un'API esterna, o API esterna con schema OpenAPI, per creare un connettore personalizzato e accedervi dai flussi di lavoro dell'app per la logica A 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 ad App per la logica di Azure di ricevere una risposta tipizzata utilizzabile nelle azioni downstream. Sono supportate le API REST e le API SOAP che possono fare riferimento alle API pubbliche o private presenti nella rete locale. I connettori personalizzati possono essere utilizzati anche con Microsoft Power Automate e Microsoft Power Apps.

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

    L'implementazione di un connettore personalizzato semplifica l'esperienza di sviluppo grazie alla creazione di un'interfaccia comune per l'invio di messaggi di richiesta e la ricezione di risposte tipizzate. Per altre informazioni, vedere Connettori personalizzati e API.

Adapter e connettori

Nella sezione seguente sono illustrati i concetti di adapter e connettori, rispettivamente in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

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

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

BizTalk Adapter Framework offre un meccanismo stabile e aperto a tutti gli adapter, per implementare o accedere ai lavori 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. Inoltre, BizTalk Adapter Framework offre la funzionalità di importazione dei servizi e degli schemi in un progetto BizTalk. Sono anche disponibili gli adapter Partner di diversi fornitori e membri della community. Per un elenco di adapter 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 dei connettori predefiniti per lavorare in modo semplice e rapido con dati, eventi e risorse in altre app, altri servizi, sistemi, protocolli e altre piattaforme, solitamente senza dover scrivere codice. App per la logica di Azure offre una raccolta in continua espansione con centinaia di connettori disponibili. È possibile creare soluzioni di integrazione per molti servizi e sistemi, basati sul cloud o locali, sia di Microsoft, sia di 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 fosse 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 per un'API usata dal servizio o dal sistema sottostante per comunicare con App per la logica di Azure. Questo connettore fornisce le operazioni che sono state utilizzate 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 la previa creazione e configurazione di una connessione al servizio o al sistema sottostante. Se necessario, dovrà essere eseguita anche l'autenticazione dell'accesso a un account utente.

Nella maggior parte dei casi, i connettori in App per la logica di Azure sono connettori predefiniti o gestiti. Alcuni connettori sono disponibili in entrambe le versioni. Le versioni disponibili dipendono dalla creazione o meno di un flusso di lavoro di app per la logica A consumo o un flusso di lavoro di 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, solitamente, offrono migliori prestazioni, velocità effettiva, capacità e altri vantaggi rispetto a qualsiasi controparte di connettori gestiti.

  • 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 per entrambi. Nei flussi di lavoro di app per la logica Standard tutti i connettori gestiti vengono raggruppati come connettori di Azure. Tuttavia, nei flussi di lavoro di app per la logica A consumo i connettori gestiti vengono raggruppati come Standard o Enterprise, in base al livello di prezzo.

Per altre informazioni, consultare la documentazione seguente:

Connettività delle applicazioni

La sezione seguente descrive le opzioni per connettersi ad altre applicazioni da BizTalk Server e dai Servizi di integrazione di Azure.

BizTalk Server

Gli adapter forniscono le funzionalità di connettività in BizTalk Server e vengono eseguiti in locale in BizTalk Server che esegue l'operazione di invio o ricezione. Sono disponibili circa 30 adapter predefiniti, mentre un piccolo ecosistema di adapter ISV offre funzionalità aggiuntive. Con questi adapter eseguiti in locale, l'autenticazione di Windows è un metodo di autenticazione comune. Gli adapter 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 adapter di protocollo. Di conseguenza, gli adapter usano generalmente un modello di messaggistica orientato ai messaggi, in cui un messaggio completo viene scambiato con altri sistemi responsabili dell'analisi dei dati prima di caricare i dati nell'archivio dati finale.

Servizi di integrazione Azure

I connettori offrono le funzionalità di connettività in App per la logica di Azure e un'astrazione oltre alle API che solitamente sono di proprietà del sistema SaaS sottostante. Ad esempio, i servizi come SharePoint vengono creati mediante un approccio API First in cui le API forniscono funzionalità al servizio per gli utenti finali, tuttavia, 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 di app per la logica Standard in App per la logica di Azure a tenant singolo. Quando si seleziona la scheda Predefiniti è possibile trovare connettori predefiniti quali, Funzioni di Azure, bus di servizio di Azure, SQL Server, Archiviazione di Azure, File System, HTTP e altri. Nella scheda Azure sono disponibili più di 800 connettori, inclusi altri connettori SaaS Microsoft, connettori SaaS partner, e così via.

Screenshot che mostra il portale di Azure, la progettazione del flusso di lavoro di App per la logica Standard e i connettori disponibili in base alla selezione della scheda Predefiniti o della scheda Azure.

Servizi Web e connettività API

La sezione seguente descrive il supporto per i servizi Web e la connettività API in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

Il supporto per i 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 dei servizi WCF.

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

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

WCF supporta le transazioni tramite il Protocollo WS-AutomicTransaction, disponibile negli adapter 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 a una transazione di un client. Allo stesso modo, un endpoint di destinazione non può partecipare a una transazione iniziata da un'orchestrazione BizTalk.

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

Se si utilizza la Console di amministrazione BizTalk, BizTalk Server può esporre le posizioni di ricezione WCF-BasicHTTP come endpoint in Gestione API di Azure. È anche possibile esporre gli endpoint SOAP tramite Gestione API da BizTalk Server, utilizzando Gestione API nel portale di Azure. Per altre informazioni, vedere Pubblicare endpoint WCF-BasicHTTP di BizTalk in Gestione API.

Servizi di integrazione Azure

Il modello di connettività nei Servizi di integrazione di Azure è diverso da quello di BizTalk Server, parzialmente a causa dell'evoluzione dell'economia delle API. Considerato che sempre più organizzazioni espongono l'accesso ai sistemi e ai dati sottostanti, era necessario adottare un approccio indipendente dalla piattaforma. Attualmente, REST è l'approccio di architettura 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 può esporre e utilizzare questo tipo di informazioni. La specifica OpenAPI rende possibile questa funzionalità per gli esseri umani e per i computer al fine di comprendere l'interazione tra un client e un server tramite i metadati. Nell'ambito di questa comprensione vengono derivati i payload di richiesta e di risposta; ciò significa che è possibile usare il contenuto dinamico per popolare gli input di un'azione del flusso di lavoro e utilizzare gli output della risposta nelle azioni downstream.

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

Microsoft offre livelli di protezione avanzata mediante la crittografia dei dati durante il transito e quando sono inattivi. Quando il traffico dei clienti di Azure si sposta tra i data center, al di fuori dei limiti fisici non controllati da Microsoft o per conto di Microsoft, viene applicato un metodo di crittografia del livello di collegamento dati che si avvale dello Standard MAC IEEE 802.1AE (MACsec) da punto a punto, nell'hardware di rete sottostante.

Microsoft offre la possibilità di usare il protocollo Transport Layer Security (TLS) 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. Il protocollo TLS offre capacità di autenticazione avanzata, privacy dei messaggi e integrità, abilitando il rilevamento di manomissioni, intercettazioni e falsificazioni dei messaggi, oltre che interoperabilità, flessibilità degli algoritmi e facilità di distribuzione e di utilizzo.

Sebbene questa sezione sia incentrata sulla connettività RESTful tramite connettori, è possibile implementare la connettività del servizio Web SOAP tramite l'esperienza del connettore personalizzato.

Bloccare l'utilizzo dell'adapter o del connettore

La sezione seguente descrive le opzioni che consentono di impedire l'utilizzo di adattatori o connettori, rispettivamente in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

BizTalk Server non include il concetto di blocco di adapter specifici da diverse applicazioni, tuttavia è possibile "bloccare" il loro utilizzo nelle applicazioni rimuovendoli dall'ambiente. Gli adapter in BizTalk Server fanno parte delle impostazioni della piattaforma, pertanto, chiunque può utilizzare gli adapter installati. Inoltre, è possibile definire gestori di ricezione e invio specifici per ciascun adapter, stabilendo così quali computer appartenenti al Gruppo BizTalk sono in grado di eseguire o elaborare tali gestori.

Servizi di integrazione Azure

Se la propria organizzazione non consente la connessione a risorse con restrizioni o non approvate tramite i connettori gestiti in App per la logica di Azure, è possibile bloccare la funzionalità per creare e usare tali connessioni nei propri flussi di lavoro di app per la logica. Con Criteri di Azure è possibile definire e applicare i criteri che impediscano la creazione o l'uso di 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 il salvataggio permanente dei messaggi in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

Il database MessageBox offre un altro vantaggio poiché agisce come punto di salvataggio permanente dei messaggi in memoria prima di tentare l'invio a un endpoint. Se il messaggio non può essere inviato dopo aver esaurito i tentativi configurati, il messaggio viene sospeso e archiviato in MessageBox.

Diagramma che mostra il database MessageBox BizTalk come punto di salvataggio permanente.

Gli amministratori possono recuperare i messaggi sospesi dalla Console di amministrazione BizTalk. Lo stesso comportamento si verifica quando si usano le orchestrazioni. Il runtime di orchestrazione consente il salvataggio permanente della logica aziendale che, in caso di errore, può essere recuperata. Ad esempio, è possibile recuperare un messaggio in un'orchestrazione negli scenari seguenti:

  • Messaggio inviato entro un ambito non atomico
  • Alla fine di un ambito transazionale
  • All'avvio di una nuova istanza di orchestrazione (forma Avvia orchestrazione)
  • In un punto di interruzione di debug
  • Quando il motore decide di eseguire la disidratazione
  • Al completamento dell'orchestrazione
  • Quando il sistema si arresta

BizTalk Server offre tutte queste funzionalità predefinite. Non è necessario preoccuparsi di implementare il salvataggio permanente perché BizTalk Server gestisce automaticamente questa funzionalità.

Servizi di integrazione Azure

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

  • Per i flussi di lavoro con stato, predefiniti nelle app per la logica A consumo e disponibili nelle app per la logica Standard, sono previsti dei checkpoint che tengono traccia dello stato del flusso di lavoro e archiviano i messaggi quando passano attraverso le azioni del flusso di lavoro. Questa funzionalità consente di accedere ai dati avanzati archiviati nella cronologia di esecuzione del trigger e dell'istanza del flusso di lavoro, dove è possibile esaminare i valori dettagliati di input e output.

    È possibile rielaborare un'istanza di esecuzione tramite il portale di Azure o un'API. In questo caso, viene eseguita l'intera istanza di esecuzione, indipendentemente dalla posizione in cui si è verificato un errore nell'esecuzione precedente. Tale comportamento implica che i messaggi vengano recapitati almeno una volta e che l'elaborazione idempotent avvenga nei consumer.

  • Grazie alla messaggistica con blocco di visualizzazione, disponibile nel bus di servizio di Azure, è possibile eseguire il commit di un messaggio dopo la sua corretta esecuzione, oppure abbandonare il messaggio se si verifica un errore. Per usare questa funzionalità in App per la logica di Azure, selezionare il connettore del bus di servizio di Azure. Un messaggio di cui è stato eseguito il commit viene rimosso dalla coda messaggi, mentre un messaggio abbandonato viene sbloccato e reso disponibile per l'elaborazione da parte dei client. Il blocco di visualizzazione è un ottimo modo per ottenere la messaggistica "esattamente una volta".

Architettura di pubblicazione-sottoscrizione

La sezione seguente descrive le opzioni per implementare il modello di pubblicazione-sottoscrizione in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

Le funzionalità di pubblicazione-sottoscrizione (pub-sub) esistono tramite il database MessageBox descritto in precedenza nella sezione Funzionamento di BizTalk Server. Un modo diffuso per creare sottoscrizioni consiste nell'uso di Proprietà innalzate di livello, che consentono di identificare elementi o attributi specifici in uno schema di messaggio definito come Proprietà innalzata di livello. È quindi possibile creare sottoscrizioni per filtrare i messaggi in base a criteri specifici rispetto a una Proprietà innalzata di livello. Ad esempio, se si innalza 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, ricevono una copia del messaggio.

Servizi di integrazione Azure

Con un'architettura completamente diversa da BizTalk Server, la maggior parte dei servizi nei Servizi di integrazione di Azure è basata su eventi. Se fosse necessario implementare una soluzione pubblicazione-sottoscrizione, è possibile usare il 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. Il bus di servizio di Azure può essere utilizzato per disaccoppiare le applicazioni dai servizi, al fine di offrire i vantaggi seguenti:

  • Bilanciare il carico di lavoro tra ruoli di lavoro in competizione.
  • Instradare e trasferire i dati in modo sicuro con il controllo sui limiti del servizio e dell'applicazione.
  • Coordinare le operazioni transazionali che richiedono un livello di affidabilità elevato.

App per la logica di Azure include un connettore del bus di servizio di Azure che può essere usato per la pubblicazione e la sottoscrizione di messaggi. Il vantaggio dell'uso del bus di servizio è la possibilità di 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à della messaggistica e del flusso di lavoro siano disaccoppiate nei Servizi di integrazione di Azure, è possibile creare sottoscrizioni di messaggi nel 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 del bus di servizio di Azure aggiungendo una o più coppie chiave-valore. Per una demo, vedere il video seguente: Pub Sub Messaging using Azure Integration Services - Part 2 Content Based Routing (Messaggistica di pubblicazione-sottoscrizione con i Servizi di integrazione di Azure - Parte 2).

Al di fuori dei Servizi di integrazione di Azure è anche possibile implementare scenari di pubblicazione-sottoscrizione usando la cache di Azure per Redis.

Motore regole di business

La sezione seguente descrive le opzioni per la configurazione delle regole business in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

BizTalk Server include un motore regole di concatenamento diretto che consente di creare regole "if-then-else" usando un editor visivo. Queste regole possono essere aggregate all’interno di criteri trasportabili in altri ambienti del 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

Sebbene in Azure non esista alcuna funzionalità equivalente del motore regole, i clienti usano spesso Funzioni di Azure per implementare regole usando codice personalizzato. Quindi accedono a queste regole usando il connettore predefinito Funzioni di Azure 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 nei Servizi di integrazione di Azure.

BizTalk Server

Essa fornisce strumenti avanzati per trasformare i messaggi XML da un formato a un altro. La trasformazione dei dati usa mappe XSLT, che supportano oggetti estensione che consentono di inserire codice Fx .NET personalizzato al centro di queste mappe. È anche possibile usare i functoid predefiniti che forniscono una funzionalità riutilizzabile che consente 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 per poter eseguire la conversione tra questi formati e XML, con conseguente supporto per diversi formati.

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 differenza fondamentale è che Enterprise Integration Pack, dal punto di vista dell'architettura, si basa sugli 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 delle app per la logica, è possibile usare operazioni di dati predefinite, ad esempio l'azione Componi o l'azione 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 che descrive il mapping o la trasformazione necessari usando il linguaggio dei modelli open source Liquid.

  • Schemi EDI

    Gli schemi documento EDI definiscono il corpo di un tipo di documento delle transazioni EDI. Per i flussi di lavoro di 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

    Nel portale di Azure è possibile caricare mappe e schemi direttamente in una risorsa di app per la logica Standard. Se si usa un progetto di app per la logica Standard in Visual Studio Code, questi artefatti possono essere caricati nelle rispettive cartelle nella cartella Artefatti, senza usare un account di integrazione. È anche possibile chiamare assembly compilati personalizzati dalle mappe XSLT.

  • Funzioni di Azure

    Le trasformazioni di modelli XSLT o Liquid possono essere eseguite usando C# o qualsiasi altro linguaggio di programmazione, per creare una funzione di Azure che può essere chiamata con Gestione API di Azure o App per la logica di Azure.

Connettività di rete

La sezione seguente descrive la funzionalità e le capacità di connettività di rete in BizTalk Server e nei Servizi di integrazione di Azure.

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 con i 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; ciò comporta solitamente 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 e sono tutti i servizi che devono essere configurati 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, quando ci si prepara alla distribuzione delle applicazioni, assicurarsi di implementare regole del firewall che consentano alle istanze host di connettersi e accedere ai diversi servizi facenti parte di una rete interna o esterna. Quando si pensa alla connettività ai sistemi finali all'esterno della rete dell'organizzazione, è necessario fare considerazioni relative alla sicurezza. Vari 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 grazie a 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 in un livello interno dell'organizzazione dove 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, anche nota come DMZ (Zona demilitarizzata), che è il limite più esterno della rete di un'organizzazione. Tuttavia, i servizi ai quali BizTalk Server deve instradare i messaggi si trovano, generalmente, all'interno della rete dell'organizzazione, quindi devono avere poter accedere a questo livello interno.

Per realizzare questi scenari, sono disponibili più approcci, ad esempio:

  • Implementare BizTalk Server in una rete perimetrale e consentire l'accesso alla rete dell'organizzazione solo ai propri servizi o istanze host
  • Configurare due BizTalk Server, uno dei quali 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 dell'organizzazione.
  • Sviluppare applicazioni personalizzate o appliance software, ad esempio NetScaler e F5, che possano 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 per connettere carichi di lavoro locali e sul 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, assicurando un trasferimento dei dati rapido e sicuro tra i dati locali e i vari servizi cloud Microsoft. Tra questi servizi sono inclusi App per la logica di Azure, Microsoft Power BI, Microsoft Power Apps, Microsoft Power Automate e Azure Analysis Services. Grazie a questo gateway è possibile mantenere i database e altre origini dati all'interno delle reti locali e usare in modo sicuro i dati locali nei servizi cloud.

    • Connessioni ibride

      Che si tratti di un servizio di Azure o di una funzionalità nel Servizio app di Azure, le connessioni ibride supportano scenari e offrono funzionalità oltre a quelle usate nel Servizio app di Azure. Per altre informazioni sull'utilizzo all'esterno del Servizio app di Azure, vedere Connessioni ibride di Inoltro di Azure. Nel Servizio app di Azure è possibile usare le connessioni ibride per accedere alle risorse delle applicazioni in qualsiasi rete in grado di effettuare chiamate in uscita ad Azure sulla porta 443. Le connessioni ibride forniscono l'accesso dall'app a un endpoint TCP e non abilitano un nuovo modo per accedere all'app. Nel Servizio app di Azure, ogni connessione ibrida è correlata a una singola combinazione di host e porta TCP. Questa funzionalità consente alle app di accedere alle risorse in qualsiasi sistema operativo, purché sia presente un endpoint TCP. Le connessioni ibride non conoscono o ignorano il protocollo dell'applicazione o gli elementi a cui si desidera accedere. Questa funzionalità fornisce semplicemente l'accesso alla rete.

    • Integrazione della rete virtuale

      L'integrazione della Rete virtuale di Microsoft Azure consente di 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 reti virtuali è possibile connettere le reti locali ad Azure che offre connettività bidirezionale tra le risorse locali e i servizi di Azure. I Servizi di integrazione di Azure forniscono la connettività di rete virtuale, consentendo l'integrazione ibrida. L'immagine seguente mostra una risorsa di 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 esca da questa rete virtuale.

      Screenshot che mostra il portale di Azure, la risorsa dell'app per la logica Standard e la pagina Rete con l'integrazione della rete virtuale abilitata.

    • 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 sul 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 possono essere utilizzati da ogni risorsa dei Servizi di integrazione di Azure:

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

(con connettori predefiniti)

(con connettori predefiniti)
Bus di servizio di Azure
Griglia di eventi di Azure

Codice personalizzato

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

BizTalk Server

È possibile estendere BizTalk in molti modi usando codice personalizzato .NET Fx, 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 generalmente semplici per natura e non possono essere sottoposti a debug.
Assembly compilati È possibile chiamare questi assembly dalle posizioni seguenti:

- Forme di espressione in un'orchestrazione
- Mappe BizTalk usando 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.
Adapter personalizzati BizTalk Server include molti adapter predefiniti, tuttavia, se necessario, è sempre possibile creare un adapter personalizzato.
Comportamenti WCF personalizzati BizTalk Server include molti adapter predefiniti, la maggior parte dei quali si basa su Windows Communication Foundation (WCF). In alcuni casi, potrebbe essere necessario estendere le loro 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 modelli chiamata XSLT per eliminare alcune limitazioni o difficoltà usando i functoid predefiniti.

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

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

Servizi di integrazione Azure

Funzioni di Azure offre la possibilità di scrivere codice eseguibile dal connettore Funzioni di Azure in App per la logica di Azure. La piattaforma Funzioni supporta diversi linguaggi di programmazione e runtime, che assicurano una grande flessibilità. Queste funzioni sono generalmente progettate per avere tempi di esecuzione brevi, inoltre, 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. Inoltre, questi frammenti di codice prevedono 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. Sebbene attualmente non esista 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 delle 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 delle app per la logica Standard, il team di App per la logica di Azure ha rilasciato di recente il supporto per chiamare il codice .NET Fx dalle mappe XSLT, che non richiede un account di integrazione. È anche possibile aggiungere assembly e mappe a un progetto di app per la logica Standard in Visual Studio Code e successivamente distribuirlo in Azure. Per altre informazioni, vedere Supporto per assembly .NET Framework aggiunto alle trasformazioni XSLT di App per la logica di Azure (Standard) e la sezione Roadmap.

È anche possibile estendere i flussi di lavoro includendo le app per le API di Azure o le app Web create con il Servizio app di Azure. Se fosse necessario ospitare app Web, API REST e back-end per dispositivi mobili, il Servizio app di Azure è la soluzione ideale basata su HTTP. È possibile integrare le app ospitate nel Servizio app di Azure con servizi locali o cloud. Questa piattaforma supporta ambienti basati su Windows e Linux per eseguire e ridimensionare le 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 nei Servizi di integrazione di Azure.

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 un'applicazione che consenta di distribuire una soluzione di Visual Studio in un'applicazione BizTalk. Pertanto, se si prevedono scenari in cui fosse 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. Il runtime BizTalk trova e carica gli assembly secondo necessità, purché questi assembly si trovino in Global Assembly Cache (GAC). Uno svantaggio è che quando è necessario aggiornare gli assembly condivisi, a meno che non si implementi uno schema di controllo delle versioni, tutti i progetti BizTalk che fanno riferimento agli assembly dovranno essere disinstallati prima di eseguire l'aggiornamento. Tale 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 un singolo flusso di lavoro con stato; ciò significa che la risorsa del flusso di lavoro e dell'app per la logica, ovvero l'applicazione, ha sempre una rapporto di 1 a 1. Con la risorsa dell'app per la logica Standard, il concetto di applicazione si è evoluto. Sebbene la risorsa dell'app per la logica Standard sia ancora la propria applicazione, è possibile includere ed eseguire più flussi di lavoro con questa risorsa, con un rapporto risultante di 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 su questo singolo progetto. Grazie a questo approccio, è possibile raggruppare facilmente e logicamente carichi di lavoro, codice ed artefatti correlati nello stesso progetto e distribuire il progetto come singola unità.

Le architetture cloud funzionano in modo diverso rispetto ai paradigmi basati su server come BizTalk. App per la logica di Azure (Standard) usa un modello pull per inserire codice e artefatti. Di conseguenza, sarà possibile copiare eventuali elementi necessari aggiuntivi nel progetto e, successivamente, distribuirli con il codice e altri artefatti. In alcuni casi, si potrebbe voler evitare di copiare tutto il codice e gli artefatti necessari. In tal caso, questa funzionalità potrebbe essere trasformata in un servizio che si possa gestire separatamente, ma che sia in grado di effettuare chiamate da un flusso di lavoro.

Si supponga, ad esempio, di avere una trasformazione dei dati che l'organizzazione usi ampiamente. Anziché includere la mappa per la trasformazione in più progetti di app per la logica, è possibile implementare un'interfaccia che fornisca la trasformazione come servizio. In questo modo è possibile gestire il ciclo di vita del servizio separatamente dai progetti di 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, ci si potrebbe chiedere come organizzare tali flussi di lavoro all'interno di un progetto o più progetti. Solitamente la risposta dipende 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à aziendali
  • Georilevazione e ridondanza geografica

Per altre informazioni, vedere Organizzazione dei flussi di lavoro di 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 con questi sistemi e accedervi quando si stabilisce una connessione, spesso è necessario trasmettere credenziali o segreti, pertanto la gestione di queste informazioni riservate richiede molta attenzione.

BizTalk Server

BizTalk include Enterprise Single Sign-On (SSO) che consente di archiviare, eseguire il mapping e trasmettere le 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 desidera connettere.

Servizi di integrazione Azure

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

  • Azure Key Vault

    Credenziali, segreti, chiavi API e certificati possono essere archiviati usando Azure Key Vault. In App per la logica di Azure è possibile accedere a queste informazioni usando il connettore Azure Key Vault ed escluderle dai log della piattaforma e dalla cronologia di esecuzione usando la funzionalità di input e output sicuri.

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

    Screenshot che mostra input e output nascosti nella cronologia di esecuzione del flusso di lavoro dopo avere abilitato la funzionalità input e output sicuri.

  • Integrazione basata su OAuth

    Durante la creazione delle connessioni, la maggior parte dei connettori si avvale di questo tipo di autenticazione. Grazie a questo approccio, l'integrazione con molti servizi SaaS diventa semplice come fornire l'indirizzo di posta elettronica e la password. Gestione API di Azure supporta anche OAuth, pertanto i due servizi possono essere usati insieme se si fornisce uno schema di autenticazione unificato.

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

  • Identità gestite

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

Gestione delle applicazioni e gestione degli accessi

Nella sezione seguente sono illustrate le opzioni per la gestione delle applicazioni e dell'accesso in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

Gli amministratori usano la Console di amministrazione di BizTalk Server per gestire le applicazioni BizTalk Server. Questo strumento è un'applicazione thick client di Microsoft Management Console (MMC), disponibile per gli amministratori, che consente di distribuire applicazioni, esaminare le transazioni precedenti, attive e in coda e di eseguire attività di risoluzione dei problemi approfondite, ad esempio la revisione delle tracce e il reinvio di transazioni.

Servizi di integrazione Azure

Il portale di Azure è uno strumento comune usato dagli amministratori e dal personale addetto al 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 anche disponibili i controlli degli accessi in base al ruolo granulari per gestire e limitare l'accesso alle risorse di Azure a vari livelli.

Storage

Nella sezione seguente vengono descritte le opzioni per l'archiviazione dei dati in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

BizTalk Server si basa principalmente su SQL Server per l'archivio dati e il salvataggio permanente dei dati. Tutti gli altri componenti e host in BizTalk Server hanno ruoli specifici nell'integrazione delle diverse applicazioni aziendali, ad esempio ricezione, elaborazione o routing di messaggi. Tuttavia, il computer di database acquisisce e salva in modo permanente il lavoro su disco. Se, ad esempio, BizTalk Server riceve un messaggio in ingresso, l'host ricevente lo salva in modo permanente 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 tempi di attività costanti. Affinché i database BizTalk Server abbiano una disponibilità elevata, i clienti usano spesso Windows Clustering per creare un cluster di server con due o più computer che eseguono SQL Server. Questo cluster di server fornisce ai database BizTalk Server ridondanza e tolleranza di errore. Diversamente dal clustering con bilanciamento del carico dove un gruppo di computer interagisce per incrementare la disponibilità e la scalabilità, il clustering di server prevede, generalmente, una coppia di computer di database in una configurazione attiva-passiva che permette a uno dei computer di fornire le risorse di backup all'altro.

Servizi di integrazione Azure

App per la logica di Azure fa affidamento su Archiviazione di Azure per archiviare e crittografare i dati inattivi automaticamente. 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 interagisce con Archiviazione di Azure tramite il portale di Azure, tutte le transazioni avvengono tramite HTTPS. È anche possibile usare Archiviazione di Azure usando l'API REST di archiviazione su HTTPS. Per imporre l'uso del protocollo HTTPS quando si chiamano le API REST per accedere a oggetti negli account di archiviazione, abilitare l'opzione di trasferimento sicuro, obbligatoria per l'account di archiviazione.

Configurazione dei dati

La separazione tra la configurazione e il codice diventa importante se si desidera spostare le soluzioni di integrazione tra ambienti, senza dover ricompilare o riassemblare il codice. Solitamente, le informazioni di configurazione sono specifiche per l'ambiente, quindi è possibile definire endpoint e altri dettagli che dovranno essere modificati durante la distribuzione delle soluzioni nel proprio contesto.

BizTalk Server

  • Eseguibile del servizio BizTalk NT

    Questo eseguibile chiama un file app.config denominato BTSNTSvc.exe.config. Questo file fornisce coppie chiave-valore che consentono di archiviare informazioni di configurazione testo non crittografate. Tuttavia, questo file richiede attenzione per via delle 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 nel file di configurazione.

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

  • Strumento Enterprise SSO

    Questo strumento può anche essere utilizzato come archivio di configurazione. Inoltre, sono disponibili gli Strumenti della community per abilitare la gestione dei dati tramite Enterprise SSO. Successivamente, sarà possibile accedere a questi dati tramite gli strumenti dell'SDK per recuperare i dati in fase di esecuzione.

  • Componenti della cache personalizzati

    Spesso questi componenti vengono introdotti per consentire la risoluzione di casi d'uso al di là delle coppie chiave-valore. Si supponga, ad esempio, di voler archiviare i dati tabulari in un database SQL Server e di caricare tali dati in memoria all'avvio di un'istanza host. Tale 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 gli sviluppatori e gli amministratori, di conseguenza, un database personalizzato è un'altra opzione comune per l'archiviazione dei dati di configurazione delle applicazioni.

  • Motore regole di business (BRE)

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

  • File di configurazione personalizzato

    I file di configurazione (.config) consentono di archiviare i dati di configurazione dell'applicazione, tuttavia non è un approccio comune perché probabilmente sarà 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 di sistema e comporta problemi relativi al backup delle singole impostazioni dell'applicazione.

Servizi di integrazione Azure

  • Azure Key Vault

    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, quali le password.

  • Configurazione app di Azure

    Questo servizio gestisce centralmente le impostazioni dell'applicazione e i flag di funzionalità. Le configurazioni di tutte le app di Azure possono essere archiviate in una posizione universale ospitata. Gestire le configurazioni in modo efficace, affidabile e in tempo reale senza impatto sui clienti, evitando ridistribuzioni dispendiose in termini di tempo. Configurazione app di Azure è progettato per offrire velocità, scalabilità e sicurezza.

  • Azure Cosmos DB

    Questo servizio è un database NoSQL completamente gestito per lo sviluppo di app moderne. Offre tempi di risposta in millisecondi a una cifra, inoltre, la scalabilità automatica e immediata garantiscono la velocità su qualsiasi scala. È possibile caricare i dati di configurazione in Azure Cosmos DB e quindi accedere ai dati tramite 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 costi ridotti. È possibile accedere facilmente a questi dati usando il Connettore di archiviazione tabelle di Azure in App per la logica di Azure. Per altre informazioni, vedere Archiviazione tabelle di Azure.

  • Caching personalizzato

    Grazie ai Servizi di integrazione di Azure, è anche possibile implementare soluzioni di memorizzazione nella cache personalizzate. Gli approcci più diffusi includono l'uso dei criteri di memorizzazione nella cache in Gestione API di Azure e cache di Azure per Redis.

  • Database personalizzato

    I database sono una tecnologia e un linguaggio noti per gli sviluppatori e gli amministratori, di conseguenza, un database personalizzato è un'altra opzione comune per l'archiviazione dei dati di configurazione delle applicazioni.

Elaborazione di file di grandi dimensioni

La sezione seguente illustra le opzioni per la gestione dei file di grandi dimensioni in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

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

  • Solo routing dei messaggi

    Se si usa BizTalk Server solo per il routing dei messaggi in base alle proprietà innalzate di livello dei messaggi, essi saranno trasmessi al database MessageBox tramite l'interfaccia XmlReader .NET. BizTalk Server non carica singole parti del messaggio in memoria, pertanto in questo scenario, gli errori di memoria insufficiente non rappresentano un problema. Tuttavia, la considerazione principale è la quantità di tempo necessaria per la scrittura di messaggi di grandi dimensioni (oltre 100 MB) nel database MessageBox. Il team di sviluppo di BizTalk Server ha testato con successo l'elaborazione di messaggi di dimensioni fino a 1 GB eseguendo soltanto 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 a potenziale elevato utilizzo della memoria, trasmette 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.

    Grazie a BizTalk Server la gestione della memoria per i documenti di grandi dimensioni è stata migliorata in modo significativo, con l'implementazione di una soglia configurabile delle dimensioni dei messaggi per caricare i documenti in memoria durante le trasformazioni. Per impostazione predefinita, la soglia delle dimensioni del messaggio è pari a 1 MB. Qualsiasi messaggio con dimensioni inferiori a questa soglia, viene gestito da BizTalk Server all'interno della memoria. Per ridurre i requisiti di memoria per i messaggi 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 dei file di grandi dimensioni con una piattaforma middleware locale come BizTalk Server e un'offerta PaaS come App per la logica di Azure. Ad esempio, esaminare attentamente gli scenari con messaggi di grandi dimensioni per trovare la soluzione appropriata, infatti vi sono 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 di App per la logica di Azure. Alcuni connettori supportano la suddivisione in blocchi dei messaggi in caso di superamento del limite di dimensioni predefinito per i messaggi, che è variabile a seconda del connettore. La suddivisione in blocchi dei messaggi prevede che un messaggio di grandi dimensioni venga suddiviso in messaggi più piccoli.

App per la logica di Azure non è l'unico servizio con limiti alle dimensioni dei messaggi. Ad esempio, anche il bus di servizio di Azure prevede tali limiti. Per altre informazioni sulla gestione dei messaggi di grandi dimensioni nel bus di servizio di Azure, vedere Supporto per messaggi di grandi dimensioni.

Modello di controllo delle attestazioni

Per evitare le limitazioni alle dimensioni dei file, è possibile implementare il modello di controllo delle attestazioni che prevede la suddivisione di un messaggio di grandi dimensioni in un controllo delle attestazioni e in un payload. Il controllo delle attestazioni viene inviato alla piattaforma di messaggistica e il payload viene archiviato in un servizio esterno. In questo modo è possibile elaborare messaggi di grandi dimensioni proteggendo il bus di messaggi e il client dal sovraccarico. Questo modello consente anche di ridurre i costi, poiché l'archiviazione è in genere più economica rispetto alle unità di risorse usate dalla piattaforma di messaggistica.

Azure Data Factory

Azure Data Factory offre un'altra opzione per la gestione dei 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 interfaccia unificata. È anche possibile trasferire i pacchetti esistenti di SQL Server Integration Services (SSIS) ad Azure in modalità lift-and-shift ed eseguirli con compatibilità completa in Azure Data Factory. SSIS Integration Runtime offre un servizio completamente gestito, pertanto non ci si deve preoccupare della gestione dell'infrastruttura. Per altre informazioni, vedere Trasferimento in modalità lift-and-shift dei carichi di lavoro di SQL Server Integration Services nel cloud.

Nelle architetture locali, SSIS era un'opzione comune per la gestione del caricamento di file di grandi dimensioni nei database. Come equivalente cloud di 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, Esplora dati di Azure, Oracle, DB2, Amazon RDS, e altre ancora. Se si hanno requisiti di elaborazione di dati di grandi dimensioni, prendere in considerazione l'uso di Azure Data Factory come opzione migliore rispetto ad App per la logica di Azure e al bus di servizio di Azure.

Monitoraggio e avvisi

BizTalk Server

  • BizTalk Health Monitor

    Questo strumento è uno snap-in di MMC e può essere usato per monitorare l'integrità degli ambienti BizTalk Server ed eseguire attività di manutenzione. Tra le funzionalità sono incluse report MsgBox Viewer (MBV), attività dello strumento Terminator, notifiche tramite posta elettronica, raccolta di report e integrazione perfmon.

  • Console di amministrazione BizTalk

    Questo strumento è anche uno snap-in di MMC che consente agli amministratori di individuare errori, istanze sospese, transazioni attualmente in corso di ripetizione, stato, e altro ancora. L'esperienza dello strumento è, per natura, molto reattiva, infatti è 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à per 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 app per la logica (Anteprima) nel 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 arrivano nel punto in cui la soluzione di gestione app per la logica fornisce le visualizzazioni dell'integrità. Per altre informazioni, vedere Configurare i log di Monitoraggio di Azure e raccogliere 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 diversi tipi di segnale, ad esempio in caso di errore di un trigger o di un'esecuzione. Per altre informazioni, vedere Monitorare lo stato di esecuzione, rivedere 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 per la creazione di risorse di app per la logica, al fine di inviare la registrazione della diagnostica e le tracce dai flussi di lavoro dell'app per la logica. In Application Insights è possibile visualizzare una mappa delle applicazioni per un miglior riconoscimento delle caratteristiche di prestazioni e integrità delle interfacce. Application Insights include anche funzionalità di disponibilità che consentono di configurare test sintetici che chiamano in modo proattivo gli endpoint e 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 offre capacità di monitoraggio e gestione tramite il mapping dei servizi di Azure, ad esempio App per la logica di Azure, bus di servizio di Azure, Gestione API di Azure e Funzioni di Azure. I messaggi possono essere rielaborati usando le code di messaggi non recapitabili nel bus di servizio di Azure, è possibile 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. Le notifiche possono essere inviate 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 attività di business

Nella sezione seguente sono illustrate le opzioni per monitorare e raccogliere dati di telemetria per i carichi di lavoro in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

BizTalk Server include una funzionalità denominata Monitoraggio attività di business che consente agli sviluppatori e agli analisti aziendali di definire i profili di rilevamento da applicare alle orchestrazioni. Mano a mano che i messaggi passano attraverso le porte di ricezione e di invio, gli attributi dei dati vengono acquisiti e archiviati in un database di Monitoraggio attività di business. Inoltre, è disponibile l'implementazione personalizzata tramite un'API .NET Fx.

Servizi di integrazione Azure

Sebbene in Azure non esista alcuna funzionalità di monitoraggio attività di business equivalente, è possibile creare una soluzione personalizzata usando funzionalità come Application Insights o altre piattaforme di dati. Durante l'esecuzione del flusso di lavoro, è possibile instrumentare il codice o la configurazione per inviare informazioni pertinenti a questi archivi dati, dove sarà 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 nell'uso di una soluzione esterna di Kovai denominata Serverless 360. Insieme alla piattaforma di monitoraggio è possibile usare la funzionalità di monitoraggio attività di business 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. Successivamente, gli amministratori possono creare i dashboard e condividerli con gli analisti aziendali.

Rilevamento

Nella sezione seguente sono illustrate le opzioni che consentono di tenere traccia degli artefatti per il monitoraggio delle prestazioni e l'analisi dell'integrità in BizTalk Server e nei Servizi di integrazione di Azure.

BizTalk Server

  • Rilevamento messaggi

    Gli amministratori di BizTalk Server possono usare il rilevamento del corpo del messaggio per indicare quando salvare in modo permanente i corpi dei messaggi nell'archiviazione per scopi di risoluzione dei problemi e controllo. Il rilevamento dei messaggi è un'operazione dispendiosa in termini di prestazioni e archiviazione, quindi si consiglia di 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 di 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>.

    Diagramma che mostra il rilevamento orchestrazioni in BizTalk Server.

    È possibile applicare il rilevamento a quasi tutti gli artefatti di BizTalk Server, inclusi 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 il riavvio.

  • Rilevamento dell'integrità e attività del sistema (HAT)

    Sebbene lo strumento HAT sia stato rimosso da BizTalk Server a partire dall'edizione 2009, la funzionalità esiste ancora nella Console di amministrazione BizTalk. Gli amministratori possono cercare i dati tramite l'interfaccia Nuova query all'interno dell'esperienza Panoramica gruppo. Le query possono essere personalizzate 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 delle attività.

  • Integrazione con Application Insights e Hub eventi di Azure

    A partire da BizTalk Server 2016 Feature Pack 1, è possibile pubblicare i dati di telemetria in Application Insights in Monitoraggio di Azure o negli Hub eventi di Azure. Questo approccio previene i problemi di capacità del disco di SQL Server e consente di usare, invece, 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 offre una cronologia di esecuzione completa, pertanto gli sviluppatori e gli analisti del supporto possono esaminare la telemetria azione per azione, inclusi tutti gli input e gli output elaborati. Per contribuire alla protezione dei dati sensibili, è possibile abilitare gli 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 specificamente 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

Nella sezione seguente sono illustrate le opzioni di hosting per BizTalk Server e per i Servizi di integrazione di Azure.

BizTalk Server

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

  • Windows Server 2019, Windows Server 2016 e Windows 10
  • Visual Studio Enterprise 2019 e Visual Studio Professional 2019
  • 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 nelle macchine virtuali di Azure. Le macchine virtuali di Azure offrono la flessibilità della 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 della generazione corrente includono il bilanciamento del carico e il ridimensionamento automatico senza alcun costo.

Servizi di integrazione Azure

App per la logica di azure
  • Piani di hosting

    In 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 nella quale è possibile usare un singolo piano di servizio di 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 migliorare la gestione di altri aspetti della soluzione. Questo approccio consente di sfruttare al meglio il piano di servizio di flusso di lavoro e le applicazioni per il lungo termine, la cui implementazione prevede il ridimensionamento individuale.

    Un'app per la logica Standard prevede 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 determinano quali 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 conoscere 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 richieste almeno tre zone di disponibilità separate in qualsiasi area di Azure che supporti e abiliti 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 al loro interno. Questa funzionalità è un requisito fondamentale per abilitare architetture resilienti e garantire una disponibilità elevata in caso di errori del data center in una determinata 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, un'opzione consente di selezionare un ambiente del servizio app v3 per l'ambiente di distribuzione. Con un ambiente del servizio app v3 si ottiene un ambiente completamente isolato e dedicato per eseguire applicazioni su larga scala e a prezzi prevedibili. Si paga solo per il piano di servizio app dell'ambiente del servizio app, indipendentemente dal numero di app per la logica create ed eseguite.

Bus di servizio di Azure

Il bus di servizio di Azure offre diversi piani tariffari che consentono la scelta del livello migliore per soddisfare le proprie esigenze. Per gli ambienti aziendali, solitamente i clienti scelgono i livelli Premium o Standard. Per i clienti che necessitano di una velocità effettiva elevata, con prestazioni prevedibili e supporto per rete avanzata, il livello Premium è l'opzione migliore. In alternativa, se si accetta una velocità effettiva variabile e l'elaborazione di messaggi di più piccole dimensioni, il livello Standard potrebbe essere una scelta sensata. La tabella seguente fornisce un riepilogo di 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 per messaggi di grandi dimensioni. Dimensioni del messaggio fino a 256 KB

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

Gestione API di Azure

Gestione API di Azure offre vari piani tariffari che offrono la scelta del livello migliore per le proprie esigenze. Ogni livello ha le proprie funzionalità, sono denominati A consumo, Developer, Basic, Standard e Premium.

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

Azure Data Factory

Azure Data Factory offre diversi modelli di prezzi tra i quali scegliere il migliore per le proprie esigenze. Le opzioni variano in base al tipo di runtime, che include Azure Integration Runtime, il runtime di integrazione rete virtuale gestita di Azure e il runtime di integrazione self-hosted. Per ogni offerta di runtime, prendere in considerazione il supporto per orchestrazioni, attività di spostamento 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 Azure Data Factory tramite esempi

Distribuzione

BizTalk Server

La creazione di pacchetti di distribuzione nativa in BizTalk Server si basa su un file del programma di installazione Microsoft (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 definiscono le impostazioni a livello di porta e pipeline, inclusi endpoint, segreti, configurazione della pipeline, e altro ancora.

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

Sebbene questo processo possa rivelarsi efficace, è anche necessario gestire ogni singola configurazione di ambiente separatamente dal codice. Il progetto open source Framework di distribuzione BizTalk (BTDF) offre una soluzione a questo problema. Questo strumento consente di gestire la configurazione dell'ambiente come parte della soluzione BizTalk Server utilizzando un file di associazione con token, creato in fase di progettazione, oltre che 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, in questo modo si ottiene un maggiore controllo sulla versione della soluzione che si desidera implementare nei vari ambienti.

Il supporto per un pacchetto BTDF in una pipeline CI/CD (integrazione continua e recapito continuo) è disponibile in BizTalk Server 2020 che include questa funzionalità, introdotta con i Feature Pack di BizTalk Server 2016. Tale funzionalità e la piattaforma Azure DevOps possono essere utilizzate 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 dei Servizi di integrazione di Azure è necessario gestire gli elementi seguenti:

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

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

  • La 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 Infrastructure as Code (IaC), migliora la qualità dell'ambiente perché consente di creare versioni per ogni ambiente e tenere traccia delle modifiche apportate al controllo del codice sorgente.

I Servizi di integrazione di Azure supportano IaC offrendo la possibilità di creare risorse dell'infrastruttura usando i modelli di Gestione delle risorse di Azure. Sebbene i modelli ARM possano sembrare difficili da comprendere e si implementino come soluzione unificata, è possibile usare strumenti di astrazione, ad esempio Bicep, Terraform o Pulumi, che offrono un'esperienza simile al codice per creare la definizione dell'infrastruttura. Anche se questi strumenti forniscono livelli di astrazione sui modelli ARM, gli strumenti generano infine dei modelli ARM e possono distribuirli automaticamente.

Con l'infrastruttura in posizione, è possibile distribuire la logica che implementa i flussi di lavoro end-to-end. Poiché i Servizi di integrazione di Azure offrono una raccolta di strumenti per implementare i flussi di lavoro di integrazione, è necessario distribuire ogni componente. Per le soluzioni create con i Servizi di integrazione di Azure, le pipeline CI/CD si basano generalmente sulla distribuzione di un'orchestrazione di componenti. I responsabili DevOps possono usare azioni predefinite che astraggono le attività di distribuzione, oppure usano azioni generiche che eseguono i 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 i repository di esempio come punto di partenza.

La procedura per preparare ciascun componente per la distribuzione, solitamente prende in considerazione i passaggi seguenti:

  • 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 stringhe di connessione e riferimenti a risorse esterne, vengono astratte per fare riferimento a un repository delle impostazioni dell'applicazione. Pertanto, in questo scenario, è possibile archiviare i riferimenti che possono esistere come testo non crittografato direttamente nel repository delle impostazioni dell'applicazione, tuttavia è necessario archiviare i valori sensibili, ad esempio i segreti, come puntatori di riferimento alle voci in un archivio di 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; quindi è possibile eseguire il mapping delle coppie nome-valore rispetto alle voci nell'insieme di credenziali delle chiavi.

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

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

  • Fase di distribuzione continua

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

    2. Aggiornare il repository delle impostazioni dell'applicazione con i valori di ambiente corretti, o come testo non crittografato o come 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 sommariamente come le risorse, gli artefatti, le funzionalità e le capacità corrispondano tra BizTalk Server e i Servizi di integrazione di Azure, anche se la corrispondenza non avrà un rapporto uno a uno. Anche se Servizi di integrazione di Azure è una piattaforma fondamentale per i carichi di lavoro di integrazione, assicurarsi di prendere in considerazione tutte le funzionalità di Azure disponibili nel complesso.

Funzione o funzionalità BizTalk Server Azure
Orchestrazioni - Orchestrazione di BizTalk Server
- Codice C# (classe helper o servizio Web)
- Flusso di lavoro di App per la logica di Azure
- App per le funzioni di Funzioni di Azure
- App per le API di Azure
Pipeline - Pipeline di BizTalk Server
- Componenti della pipeline
- Flussi di lavoro di App per la logica di Azure (come pipeline)
- Gestione API di Azure (come pipeline)
- Funzioni di Azure o app per le API di Azure
Routing dei messaggi - MessageBox
- Innalzamento di livello delle proprietà
- Filtri
- Code e argomenti del bus di servizio di Azure (intestazioni messaggi, proprietà messaggi e sottoscrizioni)
- Griglia di eventi di Azure o Gestione API di Azure
- SQL Server o Cache di Azure per Redis
Connettività delle applicazioni - Adapter personalizzati e predefiniti di BizTalk Server
- Internet Information Services (IIS) e Gestione API di Azure (funzionalità ibride)
- Connettori di App per la logica di Azure
- Gestione API di Azure (come connettori)
- Funzioni di Azure o app per le API di Azure
Riferimenti incrociati Tabelle xref_ * 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 (A consumo) e account di integrazione di Azure
- Funzioni di Azure e account di 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
- Gestione API di Azure (funzionalità ibride)
- App per la logica di Azure (A consumo) e account di integrazione di Azure (mappe XSLT, Liquid)
- Funzioni di Azure e account di archiviazione di Azure
- App per la logica di Azure e app per le API di Azure
- App per la logica di Azure (Standard)
Regole di business Motore regole di business di BizTalk Server - Funzioni di Azure
- SQL Server
- Database personalizzato
Monitoraggio attività di business Monitoraggio attività di 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 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, connettori RosettaNet e SWIFT e account di integrazione di Azure
- Gestione API di Azure 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
- Certificati di firma
- Autenticazione sicurezza IIS
- Sicurezza di rete
- Microsoft Entra ID
- Sicurezza della 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 Enterprise SSO
- Componenti della cache personalizzati
- Database personalizzato
- Motore regole di business
- Registro di sistema di Windows
- Azure Key Vault
- Configurazione app di Azure
- Azure Cosmos DB
- Archiviazione tabelle di Azure
- Configurazione di App per la logica di Azure (Standard)
- Configurazione di Funzioni di Azure
- Valori denominati e back-end di Gestione API di Azure
- SQL Server
- Memorizzazione nella cache personalizzata
- Database personalizzato
Distribuzione - File di associazione di BizTalk Server - Azure Pipelines
- Script Bicep
- Terraform
Rilevamento - Funzionalità di rilevamento di BizTalk Server (porte di ricezione, porte di trasmissione, pipeline, orchestrazioni)
- Rilevamento IIS
- Analisi predefinita di Gestione API di Azure (funzionalità ibride)
- Cronologia di esecuzione di App per la logica di Azure e proprietà rilevate
- Account di archiviazione di Azure
- Monitoraggio di Azure (Application Insights)
- Analisi predefinita di Gestione API di Azure
- Soluzione personalizzata, ad esempio Hub eventi di Azure e Funzioni di Azure più SQL Server ed Esplora dati di Azure
Monitoraggio - Console di amministrazione BizTalk
- BizTalk Health Monitor
Monitoraggio di Azure (Application Insights, Log Analytics)
Operazioni - Console di amministrazione BizTalk Server
- Azure Pipelines
- MSI, PowerShell
- Framework di distribuzione BizTalk
- Portale di Azure
- Monitoraggio di Azure
- Modelli di Azure Resource Manager
- Azure Pipelines
- PowerShell, interfaccia della riga di comando, Bicep

Screenshot che mostra la corrispondenza tra i componenti di BizTalker Server e Servizi di integrazione di Azure per la piattaforma di integrazione aziendale.

Roadmap

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

Intervallo di tempo Investimenti per le funzionalità
A breve termine - Supporto 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)
A medio termine - Miglioramenti dell'account di integrazione ed EDI
- Supporto XML nativo
- Supporto WCF e SOAP
- Supporto Motore regole business
Archiviazione Rilevamento degli eventi aziendali

Per restare aggiornati sugli investimenti più recenti, abbonarsi a Integrazioni sul blog di Azure - Tech Community.

Passaggi successivi

Si è imparato molto sul confronto tra i Servizi di integrazione Azure e BizTalk Server. Adesso è possibile apprendere come scegliere le funzionalità di Azure migliori per gli scenari previsti. In alternativa, passare alla revisione degli approcci e delle risorse suggeriti, alle considerazioni sulla pianificazione e alle procedure consigliate per la migrazione.