- SNS sta per Servizio di notifica semplice.
- È un servizio Web che semplifica la configurazione, il funzionamento e l'invio di notifiche dal cloud.
- Fornisce agli sviluppatori la capacità altamente scalabile, conveniente e flessibile di pubblicare messaggi da un'applicazione e inviarli ad altre applicazioni.
- È un modo per inviare messaggi. Quando utilizzi AutoScaling, attiva un servizio SNS che ti invierà un'e-mail che 'la tua istanza EC2 sta crescendo'.
- SNS può anche inviare messaggi ai dispositivi inviando notifiche push a dispositivi Apple, Google, Fire OS e Windows, nonché a dispositivi Android in Cina con Baidu Cloud Push.
- Oltre a inviare notifiche push ai dispositivi mobili, Amazon SNS invia le notifiche tramite SMS o e-mail a un Amazon Simple Queue Service (SQS) o a un endpoint HTTP.
- Le notifiche SNS possono anche attivare la funzione Lambda. Quando un messaggio viene pubblicato in un argomento SNS a cui è associata una funzione Lambda, la funzione Lambda viene richiamata con il payload del messaggio. Pertanto, possiamo dire che la funzione Lambda viene invocata con un payload del messaggio come parametro di input e manipola le informazioni nel messaggio e quindi invia il messaggio ad altri argomenti SNS o altri servizi AWS.
- Amazon SNS ti consente di raggruppare più destinatari utilizzando argomenti in cui l'argomento è un punto di accesso logico che invia copie identiche dello stesso messaggio ai destinatari iscritti.
- Amazon SNS supporta più tipi di endpoint. Ad esempio, puoi raggruppare destinatari IOS, Android e SMS. Una volta pubblicato il messaggio nell'argomento, SNS consegna le copie formattate del tuo messaggio agli abbonati.
- Per evitare la perdita di dati, tutti i messaggi pubblicati su SNS vengono archiviati in modo ridondante su più zone di disponibilità.
Editori e abbonati SNS
Amazon SNS è un servizio Web che gestisce l'invio di messaggi all'endpoint di sottoscrizione. Esistono due client di SNS:
- Iscritti
- Editori
Editori
Gli editori sono anche conosciuti come produttori che producono e inviano il messaggio al SNS che è un punto di accesso logico.
Iscritti
Gli abbonati come server Web, indirizzi e-mail, code Amazon SQS, funzioni AWS Lambda ricevono il messaggio o la notifica dal SNS su uno dei protocolli supportati (Amazon SQS, e-mail, Lambda, HTTP, SMS).
Nota: un editore invia il messaggio all'argomento SNS che ha creato. Non è necessario specificare l'indirizzo di destinazione durante la pubblicazione del messaggio poiché l'argomento stesso corrisponde ai sottoscrittori associati all'argomento creato dall'editore e consegna il messaggio ai sottoscrittori.
Come utilizzare l'SNS
- Passare al servizio SNS disponibile nei servizi dell'applicazione.
- Clicca sul Temi che appare sul lato sinistro della Console.
- Clicca sul Crea argomento per creare un nuovo argomento.
- Immettere il nome dell'argomento in una casella di testo.
- La schermata seguente mostra che l'argomento è stato creato correttamente.
- Per creare un abbonamento, fare clic su Crea abbonamento .
- Ora scegli il tipo di endpoint e inserisci l'indirizzo dell'endpoint, ovvero dove vuoi inviare la notifica.
- La schermata seguente mostra che lo stato dell'abbonamento è in sospeso.
- La schermata seguente mostra che la posta è stata inviata all'abbonato. Un abbonato deve fare clic su Conferma iscrizione .
- Fare clic sul nome dell'argomento, ad esempio ciao, quindi fare clic su Pubblica messaggio .
- Immettere l'oggetto, la durata residua e il corpo del messaggio da inviare all'endpoint.
- Il messaggio è stato inviato a tutti gli abbonati menzionati nell'ID.
Vantaggi del SNS
SNS si basa sulla consegna basata su push. Questa è la differenza chiave tra SNS e SQS. Il sistema SNS viene inviato una volta pubblicato il messaggio in un argomento e il messaggio viene recapitato a più abbonati.
SNS supporta più tipi di endpoint. Più tipi di endpoint possono ricevere il messaggio su più protocolli di trasporto come e-mail, SMS, Lambda, Amazon SQS, HTTP, ecc.
Il servizio SNS è piuttosto economico in quanto si basa sul modello pay-as-you-go, ovvero è necessario pagare solo quando si utilizzano le risorse senza costi iniziali.
Il servizio SNS è molto semplice da utilizzare poiché la console di gestione AWS basata sul Web offre la semplicità dell'interfaccia punta e clicca.
SNS viene utilizzato per semplificare l'architettura di messaggistica scaricando la logica di filtraggio dei messaggi dagli abbonati e la logica di instradamento dei messaggi dagli editori. Invece di ricevere tutti i messaggi dall'argomento, SNS invia il messaggio solo all'abbonato di suo interesse.
Differenze tra SNS e SQS
- SNS sta per Servizio di notifica semplice mentre SQS sta per Servizio coda semplice .
- SQS è una consegna basata su pull, ovvero i messaggi non vengono inviati ai destinatari. Gli utenti devono estrarre i messaggi dalla coda. SNS è una consegna basata su push, ovvero i messaggi vengono inviati a più abbonati.
- Nel servizio SNS, i messaggi vengono inviati a più ricevitori contemporaneamente, mentre nel servizio SQS i messaggi non vengono ricevuti da più ricevitori contemporaneamente.
- Il polling SQS introduce una certa latenza nella consegna dei messaggi mentre il push SQS ha inviato immediatamente i messaggi agli abbonati.