Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Amazon SNS
Amazon SNS ti consente di creare argomenti standard e FIFO. Gli argomenti vengono utilizzati per implementare un'architettura publish/subscribe (pub/sub). Amazon SNS supporta diversi tipi di abbonamento, tra cui e-mail, SMS (supponendo che tu abbia configurato un'identità di origine, come un numero verde o un codice lungo di 10 cifre), endpoint HTTP (S) e code SQS. Le sottoscrizioni degli utenti finali, come messaggi e-mail e SMS, a un argomento SNS devono essere confermate dall'abbonato. Amazon SNS consente un'ampia diffusione dei servizi, il che significa che un singolo messaggio può essere recapitato a un numero potenzialmente elevato di abbonati. Un argomento standard SNS ha un limite predefinito di 12,5 milioni di abbonamenti.
In un ambiente di microservizi, un argomento SNS è utile per separare il routing dei messaggi e la logica di recapito da un editore. Questo può essere implementato utilizzando filtri per argomento. Concettualmente, i filtri per argomento sono in qualche modo simili EventBridge alle regole di Amazon, ma sono configurati per ogni abbonato anziché essere disponibili da una posizione centralizzata. Ad esempio, supponiamo che tu abbia:
-
Un servizio di gestione degli ordini, che elabora gli ordini.
-
Un servizio di evasione ordini, che gestisce l'evasione degli ordini.
-
Un servizio di fidelizzazione, che assegna punti fedeltà ai membri per gli ordini.
Quando un ordine è pronto per essere evaso, pubblica un messaggio su un argomento. Il servizio Fulfillment sottoscrive l'argomento ma non applica un filtro, perché desidera conoscere tutti gli ordini. Immagina di avere un servizio di fidelizzazione, che si occupa dell'assegnazione di punti ai membri quando effettuano un ordine. Tuttavia, non tutti gli ordini vengono effettuati dai membri. Il servizio di fidelizzazione sottoscriverebbe l'argomento ma implementerebbe un filtro di iscrizione per controllare un attributo che indica se l'ordine era per un membro o un ospite.
Si consideri il caso in cui un sistema riceve una richiesta da un utente finale di effettuare un pagamento, come illustrato nel diagramma seguente. In questo caso, è necessario che più sistemi a valle sappiano che la richiesta è stata effettuata in modo da poter intraprendere varie azioni. Quando usi Amazon SNS, i pagamenti vengono pubblicati su un argomento SNS e le funzioni Lambda si iscrivono all'argomento per aggiornare i database dei clienti e delle vendite. Inoltre, un abbonamento e-mail (che deve essere confermato dal cliente) invia un'e-mail di conferma al cliente utilizzando un filtro di abbonamento.
Linea guida
Alcune delle funzionalità descritte in questa sezione per Amazon SNS si sovrappongono alle funzionalità offerte da un bus di eventi, ad esempio. EventBridge Prendi in considerazione l'utilizzo di Amazon SNS quando:
-
Avrai un gran numero di abbonati a un argomento.
-
Desideri utilizzare tipi di abbonamento (come e-mail o SMS), che non sono supportati nativamente da. EventBridge
-
Gli abbonati dovrebbero essere in grado di determinare il loro filtro di abbonamento.
-
È necessario un recapito ordinato agli abbonati (per gruppo di messaggi).
Se hai molti argomenti e vengono utilizzati abbonamenti e filtri per instradare i messaggi tra i microservizi, EventBridge è probabilmente la scelta migliore.