Servizi di messaggistica in Azure e AWS

Questo articolo confronta i principali servizi AWS e Azure per la posta elettronica, le code, la messaggistica di pubblicazione-sottoscrizione, il routing degli eventi e lo streaming di eventi. Selezionare un servizio in base al tipo di messaggio, alle garanzie di recapito, all'ordinamento, alla velocità effettiva, alla compatibilità del protocollo e al modello consumer richiesto dal carico di lavoro.

Per una guida dettagliata alla selezione del servizio Azure, vedere Scegliere tra Griglia di eventi di Azure, Hub eventi e bus di servizio.

Amazon Simple Email Service

Amazon Simple Email Service (Amazon SES) invia messaggi di posta elettronica transazionali, in blocco e di marketing.

Azure non fornisce un singolo equivalente per questi scenari. Usa Microsoft 365 High Volume Email per email automatizzate, transazionali e operative ai destinatari nel tenant Microsoft 365. Usare Exchange Online per la posta elettronica aziendale da persona a persona, non per il recapito in blocco.

Per messaggi di posta elettronica transazionali, bulk o di marketing esterni, usare un provider di comunicazioni specializzato, ad esempio Infobip, Telesign, Twilio SendGrid o altri.

Amazon Simple Queue Service

Amazon Simple Queue Service (Amazon SQS) fornisce code gestite che disaccoppiano i componenti di applicazioni distribuite. Azure offre due servizi di accodamento:

  • Usare archiviazione code di Azure per code di lavoro semplici e a elevata scalabilità. Queue Storage supporta code di dimensioni superiori a 80 GB, timeout di visibilità per i nuovi tentativi e il comportamento di lease, e aggiornamenti diretti dei messaggi per mantenere persistente lo stato di avanzamento dell'elaborazione.

  • Usare le code di bus di servizio di Azure per le funzionalità di messaggistica aziendali, ad esempio le sessioni per l'ordinamento FIFO (First-In-First Out), le transazioni, il rilevamento dei duplicati, il mancato messaggistica automatica e la sottoscrizione di pubblicazione tramite argomenti e sottoscrizioni.

  • Usare Inoltro di Azure quando è necessario esporre in modo sicuro un servizio locale ai client cloud senza aprire connessioni firewall in ingresso. Relay fornisce connettività di rete ibrida e non è un servizio di code.

Integrazione tra i servizi di messaggistica di Azure e AWS

Quando i componenti che usano Amazon SQS devono scambiare messaggi con componenti che usano bus di servizio di Azure, usare il modello Messaging Bridge. Un bridge introduce un’altra dipendenza di runtime, quindi progettalo per un’elaborazione idempotente, il monitoraggio e il ripristino in caso di guasti parziali.

Componenti di messaggistica

Servizio AWS Servizio di Azure Descrizione
Amazon Simple Queue Service (Amazon SQS) archiviazione code di Azure o code di bus di servizio di Azure Usare Archiviazione code per code di lavoro semplici e a elevata scalabilità. Usa bus di servizio quando hai bisogno di transazioni, ordinamento FIFO tramite sessioni, rilevamento dei duplicati, gestione dei messaggi non recapitabili o routing avanzato.
Amazon Simple Notification Service (Amazon SNS) bus di servizio di Azure argomenti, Griglia di eventi di Azure, Microsoft 365 high volume email o un provider di comunicazioni specializzato SNS copre diversi scenari. Usa i topic di bus di servizio per messaggi durevoli da applicazione ad applicazione con funzionalità di broker aziendale. Usare Griglia di eventi per notifiche di eventi discreti e routing reattivo. Usa Posta elettronica ad alto volume per inviare email automatiche ai destinatari all'interno del tenant di Microsoft 365. Per l'SMS o la posta elettronica esterna da applicazione a persona, usare un provider di comunicazioni elencato nella guida al ritiro di Servizi di comunicazione di Azure.
Amazon EventBridge Griglia di eventi di Azure Entrambi i servizi instradano singoli eventi dalle applicazioni, dai servizi cloud e dalle origini dei partner ai sottoscrittori. Confronta origini e destinazioni supportate, filtri, trasformazione, nuovi tentativi, gestione dei messaggi non recapitabili e modelli di recapito.
Flussi di dati Amazon Kinesis Hub eventi di Azure Entrambi i servizi acquisiscono e conservano flussi di eventi ad alta velocità per più consumatori indipendenti. Valutare i requisiti di partizionamento, conservazione, riproduzione, velocità effettiva, protocollo e scalabilità. Event Hubs supporta AMQP, HTTPS ed endpoint compatibili con Kafka.
Amazon MQ Bus di servizio di Azure Per le applicazioni JMS esistenti, bus di servizio Premium supporta JMS 2.0 e bus di servizio Standard supporta un subset JMS 1.1 limitato incentrato sulla coda. Il client JMS bus di servizio non può ricevere da entità abilitate per la sessione o usare AMQP su WebSocket, quindi usare l'SDK di bus di servizio nativo quando sono necessarie sessioni FIFO o trasporto WebSocket. Valutare la compatibilità di protocollo, API, topologia e funzionalità specifiche del broker prima della migrazione da ActiveMQ o RabbitMQ.

Architetture di messaggistica

Architettura Descrizione
Applicazione Web scalabile Usare le procedure comprovate di questa architettura di riferimento per migliorare la scalabilità e le prestazioni delle applicazioni Web del servizio app di Azure.
Integrazione aziendale con code ed eventi Un'architettura consigliata per l'implementazione di un modello di integrazione aziendale usando App per la logica di Azure, API Management di Azure, bus di servizio di Azure e Griglia di eventi di Azure.