Amazon Simple Queue Service (SQS) è un servizio di accodamento completamente gestito che semplifica la separazione e la scalabilità di microservizi, sistemi distribuiti e applicazioni serverless. La creazione di build di applicazioni a partire da singoli componenti, ognuno dei quali esegue una funzione dedicata, migliora scalabilità e affidabilità ed è una best practice di progettazione delle applicazioni moderne. SQS semplifica e riduce i costi del disaccoppiamento e il coordinamento di componenti di un'applicazione cloud. Con SQS, è possibile inviare, memorizzare e ricevere qualsiasi volume di messaggi tra componenti software senza perdite e senza dover impiegare altri servizi per mantenere la disponibilità.
SQS offre due tipi di code di messaggi. Le code standard offrono throughput massimo, ordinamento semplificato e distribuzione di tipo at-least-once. Le code FIFO di SQS sono progettate per garantire che i messaggi vengano elaborati esattamente una sola volta, nell'ordine in cui sono inviati, con un throughput limitato. Puoi iniziare a usare SQS in pochi minuti tramite la console di AWS o un kit SDK e tre semplici comandi. SQS permette di eliminare la complessità e il sovraccarico associati con la gestione e il funzionamento di infrastrutture e software di messaggistica dedicata.
Le code di consegna di messaggi di SQS sono affidabili e scalabili, senza il sovraccarico di dover gestire middleware orientato ai messaggi.
AWS gestisce per intero il funzionamento e l'infrastruttura necessaria per eseguire e ricalibrare le risorse delle code di messaggi. SQS permette di eliminare la complessità e il sovraccarico amministrativo generati da middleware orientato ai messaggi e dalla relativa infrastruttura. Con SQS, non sono previsti costi anticipati, né è necessario acquistare, installare e configurare software di messaggistica oppure creare e mantenere un'infrastruttura su cui eseguire la soluzione. Grazie a SQS, Le code vengono create in modo dinamico e le relative risorse calibrate automaticamente per consentire la rapida crescita e l'efficienza delle applicazioni.
Tramite Amazon SQS è possibile trasmettere qualsiasi volume di dati, a qualunque livello di throughput, senza perdere messaggi né richiedere la disponibilità di altri servizi. SQS permette di disaccoppiare componenti dell'applicazione per consentirne l'esecuzione indipendente e migliorare la tolleranza ai guasti generale del sistema. Tutti i componenti di un'applicazione distribuita possono memorizzare messaggi in una coda SQS. Di ciascun messaggio vengono memorizzate più copie con ridondanza su diverse zone di disponibilità, per renderle disponibili alle applicazioni che le utilizzano. La consegna dei messaggi è impostata su at-least-once per le code standard e exactly-once per le code FIFO.
Amazon SQS può essere impiegato per lo scambio di dati sensibili tra applicazioni grazie all'utilizzo della crittografia lato server o SSE (Server-Side Encryption), che codifica il corpo di ciascun messaggio in transito. Questa funzionalità di crittografia si integra con AWS Key Management Service (KMS), perciò è possibile gestire le chiavi di protezione dei messaggi SQS insieme alle chiavi impiegate per tutte le altre risorse AWS in uso. AWS KMS registra tutti gli utilizzi delle chiavi di crittografia in AWS CloudTrail, per facilitare il raggiungimento degli obiettivi normativi e di conformità. Inoltre, sono disponibili meccanismi di autenticazione per accertare che i messaggi memorizzati nelle code di Amazon SQS siano protetti da accessi non autorizzati.
Amazon SQS si integra con altri servizi AWS per semplificare la creazione di applicazioni maggiormente flessibili e scalabili. Questa soluzione si integra con servizi di elaborazione quali Amazon EC2, Amazon EC2 Container Service (Amazon ECS) e AWS Lambda, nonché con servizi di storage e database quali Amazon Simple Storage Service (Amazon S3), Amazon RDS e Amazon DynamoDB. È inoltre possibile usare Amazon SQS con Amazon Simple Notification Service (SNS) per ottenere una soluzione di messaggistica di alto livello.
È semplice iniziare a usare l'accodamento di messaggi con Amazon SQS, tramite la console oppure uno dei kit SDK. È possibile aggiungere SQS ad una coda utilizzando solo quattro API: CreateQueue, SendMessage, ReceiveMessage e DeleteMessage. Le stesse API si applicano sia alle code standard sia alle code FIFO.
Amazon SQS si avvale del cloud AWS per ricalibrare dinamicamente le risorse in base alla domanda. SQS ridimensiona in modo elastico le risorse dell'applicazione sollevando dal compito di pianificare la capacità e anticipare il provisioning. Non c'è alcun limite al numero di messaggi per coda e le code standard forniscono un throughput praticamente illimitato. I costi sono calcolati in base all'utilizzo, garantendo un notevole risparmio rispetto al modello di utilizzo continuo dei middleware di messaggistica gestiti manualmente.
La NASA Image and Video Library permette di accedere a oltre 140.000 immagini, registrazioni audio e video che documentano più di mezzo secolo di successi nell'esplorazione dello spazio. L'architettura su cui si basa include Amazon SQS per il disaccoppiamento delle attività in ingresso dai processi della pipeline, nonché Amazon Simple Notification Service per attivare la pipeline di elaborazione in caso di aggiornamento di nuovi contenuti.
BMW Group usa AWS per l'applicazione installata sulle auto della Serie 7 che raccoglie dati dai sensori, per offrire al conducente informazioni aggiornate dinamicamente sulla propria posizione. BMW ha dato vita ad un nuovo servizio, denominato CARASSO (CAR-As-a-SenSOr), in soli 6 mesi utilizzando Amazon SQS, Amazon S3, Amazon DynamoDB, Amazon RDS e AWS Elastic Beanstalk.
Capital One ha deciso di rimodernare il proprio sistema di accodamento dei messaggi, e per farlo ha eseguito la migrazione da sistemi middleware gestiti manualmente orientati ai messaggi ad Amazon SQS. Ora Capital One impiega SQS per completare la migrazione di diverse applicazioni bancarie core nel cloud per ottenere elevata disponibilità e ottimizzazione dei costi, riducendo al contempo complessità e sovraccarico amministrativo.
Change Healthcare utilizza servizi AWS quali Amazon EC2, Amazon S3, Amazon SQS e Amazon SNS per gestire ogni giorno milioni di transazioni confidenziali dei suoi clienti, mantenendo la conformità ai regolamenti del settore sanitario, fra cui la normativa HIPAA.
redBus ha approfondito l'utilizzo dei servizi AWS con Amazon SQS e Amazon SNS per la gestione di monitoraggio, avvisi comunicazioni interne. "Amazon SQS è una soluzione ideale per facilitare lo scambio di messaggi tra applicazioni esterne e la nostra applicazione." – Charan Padmaraju, CTO, redBus
Amazon SQS è molto semplice da utilizzare.
Segui il tutorial guidato nella console per distribuire la tua prima applicazione SQS in pochi clic.