Questa soluzione usa App per la logica di Azure per integrare i dati cloud nell'archiviazione dati locale.
L'architettura illustra l'uso di Azure Gestione API, l'archiviazione di segreti e chiavi API in Azure Key Vault, una connessione a SQL Server tramite un gateway dati locale e il monitoraggio delle prestazioni con Monitoraggio di Azure. Tutti questi componenti sono integrati tramite App per la logica di Azure orchestrazione.
Architettura
Il diagramma contiene due riquadri, uno per i componenti di Azure e uno per i componenti locali. All'esterno della casella di Azure è presente un file di dati con etichetta JSON. Una freccia punta dal file JSON in un'icona Gestione API che si trova all'interno della casella di Azure. Una seconda freccia punta dall'icona Gestione API a un'icona di App per la logica che si trova anche all'interno della casella di Azure. Dall'icona App per la logica partono tre frecce. Una verso l'icona di Key Vault situata all'interno del riquadro di Azure. Una verso un'icona del gateway dati locale situata tra i due riquadri. E la terza verso un'icona di Monitoraggio di Azure situata all'interno del riquadro di Azure. Un'altra freccia punta dal gateway a un'icona di SQL Server situata all'interno del riquadro locale. Infine, un'ultima freccia punta dall'icona di SQL Server a una persona all'esterno del riquadro locale.
Scaricare un file di Visio di questa architettura.
Workflow
Gestione API accetta le chiamate API sotto forma di richieste HTTP.
Gestione API instrada in modo sicuro le richieste HTTP ad App per la logica.
Ogni richiesta HTTP attiva un'esecuzione in App per la logica:
- App per la logica usa i parametri di modello protetti per recuperare le credenziali del database da Azure Key Vault.
- App per la logica usa Transport Layer Security (TLS) per inviare le credenziali del database e un'istruzione del database al gateway dati locale.
Il gateway dati locale si connette a un database di SQL Server per eseguire l'istruzione.
SQL Server archivia i dati e li rende disponibili alle app a cui gli utenti accedono.
Monitoraggio di Azure raccoglie informazioni sugli eventi e sulle prestazioni di App per la logica.
Componenti
Questa architettura usa i componenti seguenti:
Gestione API di Azure crea gateway API coerenti e moderni per i servizi back-end. Oltre ad accettare le chiamate API e a instradarle ai back-end, questa piattaforma verifica anche chiavi, token, certificati e altre credenziali. Gestione API applica anche quote di utilizzo e limiti di velocità e registra i metadati delle chiamate.
App per la logica di Azure automatizza i flussi di lavoro connettendo app e dati tra cloud. Questo servizio consente di accedere ai dati ed elaborarli in modo sicuro in tempo reale. Le relative soluzioni serverless si occupano della creazione, dell'hosting, del ridimensionamento, della gestione, della manutenzione e del monitoraggio delle app.
Un gateway dati locale funge da bridge che connette i dati locali con i servizi cloud come App per la logica. In genere, il gateway viene installato in una macchina virtuale locale dedicata. I servizi cloud possono quindi usare in modo sicuro i dati locali.
Azure Key Vault archivia e controlla l'accesso ai segreti, come token, password e chiavi API. Key Vault crea e controlla anche le chiavi di crittografia e gestisce i certificati di sicurezza.
SQL Server fornisce una soluzione per l'archiviazione e l'esecuzione di query su dati strutturati e non strutturati. Questo motore di database offre prestazioni e sicurezza leader del settore.
Monitoraggio di Azure raccoglie i dati in ambienti e risorse di Azure. Queste informazioni sono utili per mantenere disponibilità e prestazioni. Questi dati di diagnostica possono essere usati anche da altri servizi di Azure, come Archiviazione di Azure e Hub eventi di Azure. Monitoraggio è composto da due piattaforme dati:
- Log di Monitoraggio di Azure registra e archivia i dati di log e prestazioni. Per App per la logica, questi dati includono informazioni su eventi di attivazione, eventi di esecuzione ed eventi di azione.
- Metriche di Monitoraggio di Azure raccoglie valori numerici a intervalli regolari. Per App per la logica, questi dati includono la latenza di esecuzione, la frequenza e la percentuale di operazioni riuscite.
Alternative
Per questa soluzione esistono alcune alternative:
Invece di usare un'istanza locale di SQL Server, è consigliabile eseguire la migrazione a un servizio di database di Azure aggiornato e completamente gestito. Il connettore SQL Server usato da App per la logica funziona anche per il Database SQL di Azure e l'Istanza gestita di SQL di Azure. Per altre informazioni, vedere Automatizzare i flussi di lavoro per un database SQL con App per la logica di Azure. Per iniziare con la migrazione, vedere Servizio Migrazione del database di Azure.
Per attività di automazione complesse, è consigliabile usare Funzioni di Azure invece di App per la logica. Entrambi i servizi consentono di creare flussi di lavoro serverless. Funzioni di Azure è un servizio di calcolo destinato all'esecuzione di codice personalizzato o di elaborazione complessa o per l'integrazione con altri servizi. App per la logica è un servizio cloud destinato all'automazione e all'orchestrazione di attività e flussi di lavoro aziendali. Fornisce una finestra di progettazione visiva e molti connettori predefiniti. Per altre informazioni, vedere Confrontare Funzioni di Azure e App per la logica di Azure.
Per le integrazioni più semplici, è consigliabile usare Power Automate invece di App per la logica. Per altre informazioni, vedere Confrontare Microsoft Power Automate e App per la logica di Azure.
Power Apps fornisce anche soluzioni per l'automazione dei flussi di lavoro che comportano la connessione a origini dati locali.
Dettagli dello scenario
Un'app per la logica può archiviare i dati delle richieste HTTP in un database di SQL Server. Poiché App per la logica funziona come endpoint sicuro di Gestione API di Azure, le chiamate all'API possono attivare varie attività correlate ai dati. Oltre ad aggiornare i database locali, è anche possibile inviare messaggi di Teams o di posta elettronica.
Potenziali casi d'uso
Usare questa soluzione per automatizzare le attività di integrazione dei dati eseguite in risposta alle chiamate API.
Considerazioni
Queste considerazioni implementano i pilastri di Azure Well-Architected Framework, che è un set di set di principi guida che è possibile usare per migliorare la qualità di un carico di lavoro. Per altre informazioni, vedere Framework ben progettato di Microsoft Azure.
Affidabilità
L'affidabilità garantisce che l'applicazione possa soddisfare gli impegni assunti dai clienti. Per altre informazioni, vedere Panoramica del pilastro dell'affidabilità.
Per la disponibilità elevata, aggiungere il gateway locale a un cluster invece di installare un gateway autonomo.
Sicurezza
La sicurezza offre garanzie contro attacchi intenzionali e l'abuso di dati e sistemi preziosi. Per altre informazioni, vedere Panoramica del pilastro della sicurezza.
Il gateway dati locale usa la crittografia delle credenziali e l'autenticazione dell'utente per proteggere i dati durante i trasferimenti tra sistemi locali e di Azure.
Gestione API aiuta a garantire che solo i client autorizzati chiamino l'app per la logica. È anche possibile eseguire questi passaggi:
Poiché Gestione API è l'unico client che deve chiamare l'app per la logica, è consigliabile limitare gli indirizzi IP in ingresso dell'app. È possibile configurare l'app per la logica in modo che accetti solo le richieste provenienti dall'indirizzo IP dell'istanza del servizio di Gestione API.
È anche possibile usare uno di questi schemi di autorizzazione per limitare l'accesso all'app per la logica:
È consigliabile usare il controllo degli accessi in base al ruolo di Azure per consentire solo a utenti o gruppi specifici di gestire, modificare e visualizzare le app per la logica.
Sono disponibili informazioni su ogni esecuzione dell'app per la logica, ad esempio lo stato, la durata, gli input e gli output per ogni azione. Usare uno di questi metodi per controllare chi può accedere agli input e agli output nella cronologia di esecuzione:
Ottimizzazione dei costi
L'ottimizzazione dei costi riguarda la riduzione delle spese non necessarie e il miglioramento dell'efficienza operativa. Per altre informazioni, vedere Panoramica del pilastro di ottimizzazione dei costi.
La tabella seguente fornisce profili di costo che usano diversi livelli di velocità effettiva prevista:
Gestione API | Esecuzioni di azioni di App per la logica | Esecuzioni di connettori di App per la logica | Profilo |
---|---|---|---|
Di base | 1.000/giorno | 1.000/giorno | Profilo di base |
Standard | 10.000/giorno | 10.000/giorno | Profilo standard |
Premium | 100.000/giorno | 100.000/giorno | Profilo Premium |
I profili non includono i costi di un database di SQL Server. Per modificare i parametri ed esplorare il costo di esecuzione di questa soluzione nel proprio ambiente, usare il calcolatore prezzi di Azure.
Esplorare queste strategie per ridurre al minimo i costi di App per la logica:
- Eseguire istruzioni SQL in batch.
- Creare stored procedure per organizzare i risultati del database in modo efficiente.
- Specificare condizioni di attivazione precise per i flussi di lavoro.
- Disattivare le app per la logica che non devono essere eseguite costantemente.
Efficienza prestazionale
L'efficienza delle prestazioni è la capacità di dimensionare il carico di lavoro per soddisfare in modo efficiente le richieste poste dagli utenti. Per altre informazioni, vedere Panoramica dell'efficienza delle prestazioni.
Con il modello serverless usato da App per la logica, il servizio viene dimensionato automaticamente per soddisfare la domanda. Tenere tuttavia presenti i limiti per le operazioni di lettura e scrittura con il gateway dati locale.
Collaboratori
Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai seguenti contributori.
Autori principali:
- Beatriz Matsui | Consulente
- Shan Singh | Software Engineer
Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.
Passaggi successivi
- Importare un'app per la logica come API
- Installare un gateway dati locale per App per la logica di Azure
- Connettersi a origini dati locali da App per la logica di Azure
Risorse correlate
Automatizzare i flussi di lavoro per un database SQL usando App per la logica di Azure
Architetture simili:
- Gateway dati locale per App per la logica di Azure: un'app per la logica attivata da Azure Spring Apps che si connette a un'istanza di SQL Server locale.
- Integrazione aziendale con code ed eventi: app per la logica che rispondono alle chiamate API integrando sistemi back-end.
- Applicazione Web serverless: un'app Web serverless che usa Funzioni di Azure per leggere i dati del database.