Ricerca nel sito web

Come creare un abbonamento tra una coda SQS e un argomento SNS su AWS


Su questa pagina

  1. Prerequisiti
  2. Cosa faremo?
  3. Accedi ad AWS
  4. Controlla SNS
  5. Controlla SQS e modifica la sua politica di accesso
  6. Crea un abbonamento da SNS a SQS
  7. Richiedi messaggi su SQS e invia un messaggio da SNS.
  8. Elimina l'abbonamento
  9. Conclusione

L'idea alla base dell'iscrizione a SQS in SNS è inviare messaggi da SNS a SQS. È possibile inviare sia messaggi grezzi che qualsiasi altro attributo del messaggio incluso nel messaggio SNS. Prima di procedere con questo articolo, si presuppone che tu abbia un SNS e un SQS nell'account. La creazione di SNS e SQS non rientra nell'ambito di questo articolo.

SNS può avere più code SQS sottoscritte e SNS pubblicherà lo stesso messaggio in tutte le sue sottoscrizioni.

Vai alla pagina ufficiale di AWS per conoscere i prezzi di SQS.

Prerequisiti

  1. Account AWS (crea se non ne hai uno).
  2. Argomento SNS (fai clic qui per imparare a creare un argomento SNS)
  3. Argomento SQS

Che cosa faremo?

  1. Accedi ad AWS.
  2. Controlla SNS.
  3. Controlla SQS e modifica la sua politica di accesso.
  4. Crea un abbonamento da SNS a SQS.
  5. Richiedi messaggi su SQS e invia un messaggio da SNS.
  6. Elimina l'abbonamento.

Accedi ad AWS

Per accedere al tuo account AWS, fai clic qui e inserisci le tue credenziali

Dopo aver effettuato correttamente l'accesso al tuo account, vedrai la console di gestione AWS principale come segue.

Controlla SNS

Cerca SNS nella casella di ricerca nella parte superiore dello schermo.

Vedrai la dashboard SNS come segue. Fai clic su \Argomenti\ nel riquadro a sinistra.

Qui vedrai gli argomenti SNS esistenti nel tuo account nell'area geografica selezionata. Userò l'argomento SNS \sns-test\. Fare clic sull'argomento desiderato per visualizzarne i dettagli.

Qui l'argomento non ha alcun abbonamento ad esso.

Controlla SQS e modifica la sua politica di accesso

Cerca SQS nella casella di ricerca nella parte superiore dello schermo.

Vedrai la dashboard principale come segue per SQS con un elenco di code SQS disponibili nella regione selezionata nel tuo account AWS. Qui userò la coda \sqs-test\. Fare clic sull'argomento SQS per verificarne i dettagli e modificare la policy di accesso.

Vai alla scheda \Criterio di accesso\ per modificare il criterio predefinito/esistente e fai clic sul pulsante \Modifica\.

Nella policy di accesso, sostituisci l'account arn con * in Blocco principale per evitare potenziali problemi di accesso e salva le modifiche. Questo non è raccomandato negli account di produzione.

Crea un abbonamento da SNS a SQS

Vai all'argomento SNS e fai clic sul pulsante \Crea abbonamento\ per creare un abbonamento.

Qui, modifica il protocollo in Amazon SQS e specifica l'ARN dell'argomento SQS nel campo dell'endpoint. Seleziona la casella di controllo \Abilita la consegna dei messaggi non elaborati\ e quindi fai clic sul pulsante \Crea abbonamento\.

Ora, se vai all'argomento SNS vedrai che l'abbonamento è stato creato con successo e lo stato è confermato.

Esegui il polling dei messaggi su SQS e invia un messaggio da SNS.

Possiamo verificare se i messaggi arrivano in SQS quando vengono inviati dall'argomento SNS. Per verificarlo, vai all'argomento SQS e fai clic sul pulsante \Invia e ricevi messaggi\.

Qui fai clic sul pulsante \Pool per i messaggi\.

Non appena fai clic sul pulsante \Sondaggio per i messaggi\, vai all'argomento SNS e fai clic sul pulsante \Pubblica messaggio\.

Qui, aggiungi un oggetto al messaggio e seleziona un'opzione \Payload personalizzato per ogni protocollo di consegna\.

Scorri un po' verso il basso e fai clic sul pulsante \Pubblica messaggio\.

Ora, se torni alla pagina SQS, vedrai che il messaggio è stato ricevuto da SQS.

Fai clic sull'ID del messaggio per vedere cosa è stato inviato da SNS.

Nella sezione del corpo, puoi vedere che il messaggio inviato da SNS è stato ricevuto con successo da SQS.

Elimina l'abbonamento

Se non hai più bisogno dell'abbonamento, puoi eliminarlo facilmente dall'argomento SNS stesso. Selezionare l'abbonamento e fare clic sul pulsante \Elimina\.

Verrà visualizzata una schermata pop-up per confermare l'eliminazione. Una volta eliminato l'abbonamento, non è possibile ripristinarlo. Prestare attenzione durante l'esecuzione delle operazioni di eliminazione nei propri account di produzione.

Conclusione

In questo articolo, abbiamo visto i passaggi per creare un abbonamento dall'argomento SNS all'argomento SQS. Abbiamo inviato un messaggio di esempio da SNS che è stato sottoposto a polling in SQS. Abbiamo anche visto con quanta facilità un abbonamento può essere eliminato dal SNS.