AWS - skirtumas tarp SQS ir SNS

SQS (paprastos eilės paslauga) vs SNS (paprasto pranešimo paslauga) AWS („Amazon Web Services“)

SNS ir SQS

SNS (paprasta pranešimų tarnyba)

SNS

SNS yra „Amazon“ paprasto pranešimo tarnyba („Amazon SNS“) - greita, lanksti, visiškai valdoma tiesioginio pranešimo paslauga, leidžianti siųsti atskirus pranešimus arba masinius pranešimus dideliam gavėjų skaičiui. Dėl „Amazon SNS“ yra paprasta ir ekonomiška siųsti tiesioginius pranešimus mobiliųjų įrenginių vartotojams, el. Pašto gavėjams ar net siųsti žinutes į kitas platinamas paslaugas.

Išplatinta leidybos-prenumeratos sistema. Pranešimai siunčiami prenumeratoriams, kai tik leidėjai juos siunčia SNS, SNS palaiko keletą galinių taškų, tokių kaip el. Paštas, SMS, http pabaigos taškas ir SQS. Jei norite, kad nežinomas abonentų skaičius ir tipas gautų žinutes, jums reikia SNS.

Naudodamiesi „Amazon SNS“, galite siųsti tiesioginius pranešimus „Apple“, „Google“, „Fire OS“ ir „Windows“ įrenginiams, taip pat „Android“ įrenginiams Kinijoje su „Baidu Cloud Push“. Galite naudoti SNS norėdami siųsti SMS žinutes mobiliųjų įrenginių vartotojams JAV arba el. Laiškų gavėjams visame pasaulyje.

SNS yra paskirstyta leidinių prenumeratos sistema. Pranešimai siunčiami prenumeratoriams, kai leidėjai juos siunčia SNS.

SQS (paprastos eilės paslauga)

SQS

SQS yra paskirstyta eilių sistema. Pranešimai nėra stumiami į imtuvus. Gavėjai turi apklausti SQS, kad gautų pranešimus. Vienu metu pranešimai negali būti priimti keliais imtuvais. Bet kuris gavėjas gali priimti pranešimą, jį apdoroti ir ištrinti. Kiti imtuvai vėliau negauna tos pačios žinutės. Apklausa iš esmės sukelia tam tikrą pranešimų perdavimo SQL vėlavimą, skirtingai nei SNS, kai pranešimai nedelsiant perduodami abonentams.

SQS dažniausiai naudojamas atsieti programas ar integruoti programas. Pranešimus SQS galima laikyti trumpą laiką (daugiausia 14 dienų). SNS kelioms abonentams platina kelias žinutės kopijas. Pvz., Tarkime, kad norite atkartoti programos sukurtus duomenis keliose saugojimo sistemose. Galite naudoti SNS ir siųsti šiuos duomenis keliems prenumeratoriams, kiekvienas pakartodamas gautus pranešimus skirtingoms saugojimo sistemoms (s3, pagrindiniame kompiuterio diske, duomenų bazėje ir kt.).

SNS palaiko keletą galinių taškų, tokių kaip el. Paštas, sms, http galinis taškas ir SQS. Jei norite, kad nežinomas abonentų skaičius ir tipas gautų žinutes, jums reikia SNS.

Toliau pateikiami keli skirtumai:

Subjekto tipas

  • SQS: eilė (panaši į JMS)
  • SNS: Tema (Pub / Sub sistema)

Pranešimų vartojimas

  • SQS: „Pull Mechanism“ - vartotojai apklausa ir iš SQS siunčia žinutes
  • SNS: „Push Mechanism“ - SNS perduoda vartotojams žinutes

Naudojimo atvejis

  • SQS: atsieti dvi programas ir leisti lygiagretų asinchroninį apdorojimą
  • SNS: „Fanout“ - reikšmė, leidžianti tą patį pranešimą apdoroti keliais būdais

Patvarumas

  • SQS: Pranešimai išlieka tam tikrą (konfigūruojamą) trukmę, kol vartotojas jų neturi
  • SNS: nėra atkaklumo. Nepriklausomai nuo to, kuris vartotojas yra pranešimo atvykimo metu, gaukite pranešimą ir pranešimas bus ištrintas. Jei nėra vartotojų, pranešimas prarandamas.

y., SQS žinučių tiekimas garantuotas, bet SNS - ne.

Vartotojo tipas

  • SQS: Visi vartotojai turėtų būti tapatūs ir todėl apdoroja pranešimus visiškai vienodai
  • SNS: Visi vartotojai (turėtų būti) skirtingai apdoroja pranešimus

Paraiškų pavyzdžiai

  • SQS: darbo vietų sąranga. Kai darbai pateikiami SQS, o vartotojai kitame gale gali apdoroti darbus asinchroniškai. Ir jei darbo dažnis padidėja, tada gali padaugėti vartotojų, kad būtų galima apdoroti lygiagrečiai
  • SNS: Vaizdo apdorojimas. Jei kas nors įkelia vaizdą į S3, tada pažymėkite tą paveikslėlį, sukurkite miniatiūrą ir taip pat atsiųskite „ThankYou“ el. Laišką. Tokiu atveju S3 gali nusiųsti pranešimą SNS temai, o 3 vartotojus galima pridėti prie SNS temos. 1-asis pažymės paveikslėlį, 2-asis sukuria miniatiūrą, o trečiasis atsiųs „ThankYou“ el. Laišką. Visi jie gauna tą patį pranešimą (vaizdo URL) ir lygiagrečiai atlieka atitinkamą apdorojimą.

Jūs neturite visada susieti SNS ir SQS. Galite reikalauti, kad SNS siųstų pranešimus el. Paštu, SMS ar http pabaigos tašku, išskyrus SQS. SNS ir SQS sujungimas turi pranašumų. Galbūt nenorite, kad išorinės paslaugos užmegztų ryšį su jūsų kompiuteriais (ugniasienė gali blokuoti visus gaunamus ryšius su jūsų kompiuteriu iš išorės). Jūsų galas gali tiesiog mirti dėl gausios žinučių apimties. El. Paštas ir SMS galbūt nėra jūsų pasirinkimas greitai apdoroti pranešimus. Sujungdami SNS su SQS, galite gauti žinutes savo tempu. Tai leidžia klientams būti neprisijungusiems, tolerantiškiems tinklo ir pagrindinio kompiuterio gedimams. Jūs taip pat pasiekiate garantuotą pristatymą. Jei sukonfigūruosite SNS siųsti pranešimus į http galinį tašką arba el. Laišką ar SMS, keli pranešimo siuntimo nesugebėjimai gali prarasti pranešimą.

SQS dažniausiai naudojamas atsieti programas arba integruoti programas. Pranešimus SQS galima laikyti trumpą laiką (daugiausia 14 dienų). SNS kelioms abonentams platina kelias žinutės kopijas. Pvz., Tarkime, kad norite atkartoti programos sukurtus duomenis keliose saugojimo sistemose. Galite naudoti SNS ir siųsti šiuos duomenis keliems prenumeratoriams, kiekvienas pakartodamas gautus pranešimus skirtingoms saugojimo sistemoms (s3, pagrindiniame kompiuterio diske, duomenų bazėje ir kt.).

Laimingas debesuotumas !!!