Idee per le soluzioni
Questo articolo descrive un'idea di soluzione. L'architetto cloud può usare queste linee guida per visualizzare i componenti principali per un'implementazione tipica di questa architettura. Usare questo articolo come punto di partenza per progettare una soluzione ben progettata in linea con i requisiti specifici del carico di lavoro.
Questo articolo descrive un'architettura basata su eventi serverless in una rete virtuale che inserisce ed elabora un flusso di dati e quindi scrive i risultati in un database.
Architettura
Flusso di dati
- L'integrazione della rete virtuale viene usata per inserire tutte le risorse di Azure dietro gli endpoint privati di Azure.
- Gli eventi arrivano all'hub eventi di input.
- La funzione di de-batch e filtro di Azure viene attivata per gestire l'evento. Questo passaggio filtra gli eventi indesiderati e de-batch gli eventi ricevuti prima di inviarli all'hub eventi di output.
- Se la funzione di de-invio in batch e filtro di Azure non riesce a archiviare correttamente l'evento, l'evento viene inviato all'hub eventi deadletter 1.
- Gli eventi in arrivo nell'hub eventi di output attivano la funzione di Azure di trasformazione. Questa funzione di Azure trasforma l'evento in un messaggio per l'istanza di Azure Cosmos DB.
- L'evento viene archiviato in un database di Azure Cosmos DB.
- Se la funzione di trasformazione di Azure non riesce a archiviare correttamente l'evento, l'evento viene salvato nell'hub eventi Deadletter 2.
Nota
Per semplicità, le subnet non vengono visualizzate nel diagramma.
Componenti
- L'endpoint privato di Azure è un'interfaccia di rete che si connette in modo privato e sicuro a un servizio basato sul collegamento privato di Azure. Endpoint privato usa un indirizzo IP privato della rete virtuale, portando il servizio nella rete virtuale in modo efficace.
- Hub eventi inserisce il flusso di dati. Hub eventi è progettato per scenari di flusso di dati con velocità effettiva elevata.
- Funzioni di Azure è un'opzione di calcolo senza server. Usa un modello basato su eventi, in cui una parte di codice (una funzione) viene richiamata da un trigger.
- Azure Cosmos DB è un servizio di database multimodelli disponibile in modalità serverless basata sul consumo. Per questo scenario, la funzione di elaborazione eventi archivia i record JSON usando Azure Cosmos DB per NoSQL.
Dettagli dello scenario
Questa soluzione illustra una variante di un'architettura basata su eventi serverless che inserisce un flusso di dati, elabora i dati e scrive i risultati in un database back-end. In questo esempio la soluzione è ospitata all'interno di una rete virtuale con tutte le risorse di Azure dietro gli endpoint privati.
Per altre informazioni sui concetti di base, sulle considerazioni e sugli approcci per l'elaborazione di eventi serverless, vedere l'architettura di riferimento per l'elaborazione di eventi serverless.
Potenziali casi d'uso
Un caso d'uso comune per l'implementazione di un modello di elaborazione del flusso di eventi end-to-end include il servizio di inserimento di streaming di Hub eventi per ricevere ed elaborare eventi al secondo usando la logica di de-batch e trasformazione implementata con funzioni altamente scalabili attivate da Hub eventi.
Collaboratori
Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai seguenti contributori.
Autore principale:
- Rajasa Savant | Senior Software Development Engineer
Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.
Passaggi successivi
- Gestire una connessione endpoint privato
- Guide introduttive all'endpoint privato:
- Hub eventi di Azure documentazione
- Introduzione a Funzioni di Azure
- Documentazione di Funzioni di Azure
- Panoramica di Azure Cosmos DB
- Scegliere un'API in Azure Cosmos DB
Risorse correlate
- L'elaborazione di eventi serverless è un'architettura di riferimento che descrive in dettaglio un'architettura tipica di questo tipo, con esempi di codice e discussioni su considerazioni importanti.
- Azure Kubernetes nell'elaborazione del flusso di eventi descrive una variante di un'architettura basata su eventi serverless in esecuzione in Azure Kubernetes con il ridimensionatore KEDA.