2012-12-03 30 views
138

मुझे समझ में नहीं आता कि मैं एसएनएस बनाम एसएनएसएस का उपयोग कब करूंगा, और वे हमेशा एक साथ क्यों मिलते हैं?अमेज़ॅन एसएनएस और अमेज़ॅन एसक्यूएस के बीच क्या अंतर है?

+0

मैं अपनी टिप्पणी से क्या समझते प्रवाह निम्नलिखित .. यह सही है में वर्णन किया गया? प्रकाशक -> एसएनएस -> एसक्यूएल (कतार में संदेश धारण करना) -> सब्सक्राइबर (वर्तमान में ऑफलाइन) – friendyogi

+1

https://aws.amazon.com/blogs/aws/queues-and-notifications-now-best-friends/ –

उत्तर

226

एसएनएस एक वितरित प्रकाशित: सदस्य बनने के प्रणाली है। संदेश ग्राहकों को धक्का दिया गया है जब वे प्रकाशकों द्वारा एसएनएस को भेजे जाते हैं। एसक्यूएसक्यूइंग सिस्टम वितरित किया गया है। संदेश रिसीवर को धक्का नहीं दिया जाता है। संदेश प्राप्त करने के लिए रिसीवर को सर्वेक्षण एसक्यूएस होना है। एक ही समय में एकाधिक रिसीवर द्वारा संदेश प्राप्त नहीं किए जा सकते हैं। कोई भी रिसीवर संदेश प्राप्त कर सकता है, प्रक्रिया कर सकता है और इसे हटा सकता है। अन्य रिसीवर बाद में एक ही संदेश प्राप्त नहीं करते हैं। मतदान से एसएनएस के विपरीत एसक्यूएस में संदेश वितरण में कुछ विलंबता शुरू होती है जहां संदेशों को तुरंत ग्राहकों को धकेल दिया जाता है। एसएनएस ईमेल, एसएमएस, http एंड पॉइंट और एसक्यूएस जैसे कई अंत बिंदुओं का समर्थन करता है। यदि आप संदेश प्राप्त करने के लिए अज्ञात संख्या और ग्राहकों के प्रकार चाहते हैं, तो आपको एसएनएस की आवश्यकता है।

आपको हमेशा एसएनएस और एसक्यूएस को जोड़े जाने की ज़रूरत नहीं है। आप एसएनएस एसक्यूएस के अलावा ईमेल, एसएमएस या http अंत बिंदु पर संदेश भेज सकते हैं। एसक्यूएस के साथ एसएनएस को जोड़ने के फायदे हैं। हो सकता है कि आप बाहरी होस्ट को अपने होस्ट से कनेक्शन नहीं बनाना चाहें (फ़ायरवॉल आपके आने वाले कनेक्शन को आपके मेजबान से बाहर कर सकता है)। संदेश की भारी मात्रा के कारण आपका अंतिम बिंदु मर सकता है। ईमेल और एसएमएस शायद संदेश संसाधित करने की आपकी पसंद जल्दी नहीं है। एसक्यूएस के साथ एसएनएस जोड़कर, आप अपनी गति से संदेश प्राप्त कर सकते हैं। यह ग्राहकों को ऑफ़लाइन होने, नेटवर्क के प्रति सहिष्णु और मेजबान विफलताओं की अनुमति देता है। आप गारंटीकृत डिलीवरी भी प्राप्त करते हैं। यदि आप http अंत बिंदु या ईमेल या एसएमएस पर संदेश भेजने के लिए एसएनएस कॉन्फ़िगर करते हैं, तो संदेश भेजने के लिए कई विफलताओं के परिणामस्वरूप संदेश गिराया जा सकता है।

एसक्यूएस मुख्य रूप से अनुप्रयोगों को कम करने या अनुप्रयोगों को एकीकृत करने के लिए उपयोग किया जाता है। समय की छोटी अवधि (अधिकतम 14 दिन) के लिए संदेश एसक्यूएस में संग्रहीत किया जा सकता है। एसएनएस कई ग्राहकों को संदेश की कई प्रतियां वितरित करता है। उदाहरण के लिए, मान लें कि आप किसी एप्लिकेशन द्वारा उत्पन्न डेटा को कई स्टोरेज सिस्टम में दोहराना चाहते हैं। आप एसएनएस का उपयोग कर सकते हैं और इस डेटा को कई ग्राहकों को भेज सकते हैं, प्रत्येक संदेश को विभिन्न स्टोरेज सिस्टम (एस 3, हार्ड होस्ट, आपके मेजबान, डेटाबेस इत्यादि) को प्राप्त करता है।

+1

मूल रूप से, पुश अधिसूचना संदेशों जैसे कुछ को लागू करने के लिए, एसएनएस और एसक्यूएस का उपयोग करने की अनुशंसा की जाती है, इसलिए स्नू के साथ धक्का दिया जाएगा जब तक कि उपयोगकर्ता केवल उन्हें कतार से पुनर्प्राप्त नहीं कर लेता है? क्या प्रति उपयोगकर्ता कतार बनाना संभव है? –

+0

हाँ। आप एसएनएस के लिए जितना चाहें उतने ग्राहक हो सकते हैं। आप एकाधिक कतारों में अधिसूचनाएं भेज सकते हैं। – Srikanth

+0

हाय क्षमा करें, मुझे लगता है कि यह प्रश्न पुराना है, लेकिन मैं एसक्यूएस के बारे में सोच रहा हूं क्या यह ऑफ़लाइन संदेशों को जानता है और स्टोर करता है? चूंकि एपीएनएस ऑफ़लाइन संदेशों को स्टोर नहीं करता है, केवल नवीनतम संदेश। क्या यह पता चलेगा कि आईओएस डिवाइस ऑफलाइन हैं और ऑफलाइन संदेशों को सीधे स्टोर करते हैं? और डिवाइस वापस ऑनलाइन होने पर इसे बाद में भेज दें? – John

15

एडब्ल्यूएस डॉक से:

अमेज़न एसएनएस, एक "पुश" तंत्र के माध्यम से कई ग्राहकों के लिए समय महत्वपूर्ण संदेश भेजने की जरूरत समय-समय पर जाँच करें या अद्यतन के लिए "चुनाव" के लिए नष्ट करने की अनुमति देता है।

अमेज़न SQS एक संदेश कतार वितरित अनुप्रयोगों द्वारा इस्तेमाल किया एक मतदान मॉडल के माध्यम से संदेश का आदान प्रदान करने की सेवा है, और दसगुणा भेजने और प्रत्येक घटक की आवश्यकता होती है समवर्ती उपलब्ध होने की बिना घटकों-प्राप्त करने के लिए इस्तेमाल किया जा सकता।

http://docs.aws.amazon.com/sns/latest/dg/SendMessageToSQS.html

संबंधित मुद्दे