पाठ 23 / 28
Messaging: SQS और SNS
SQS queues से services को अलग करें और SNS topics से notifications fan out करें, और जानें कि कब कौन-सा उपयोग करना है।
Queue बनाम topic
SQS queue है: producers messages भेजते हैं और consumers अपनी गति से poll व process करते हैं, जिससे traffic spikes सँभलते हैं। SNS publish/subscribe है: एक message कई subscribers, जैसे SQS queues, Lambda functions, email या HTTP endpoints, तक पहुँचता है।
भेजना और प्राप्त करना
Consumers को process के बाद message delete करना चाहिए; वरना वह visibility timeout के बाद फिर दिखता है।
aws sqs send-message --queue-url $Q --message-body '{"orderId":"o1001"}'
aws sqs receive-message --queue-url $Q --wait-time-seconds 10
aws sqs delete-message --queue-url $Q --receipt-handle "$HANDLE"लगातार विफल होने वाले messages पकड़ने के लिए dead-letter queue जोड़ें, और consumers को idempotent बनाएँ क्योंकि standard queues कम से कम एक बार deliver करती हैं।
त्वरित जाँच
त्वरित जाँच: कौन-सी service एक message को कई subscribers तक पहुँचाती है?
- SNS
- SQS
- S3
- IAM
Answer
SNS — SNS publish/subscribe है; SQS consumers के poll करने के लिए queue है।