Simple Notification Service (SNS)
Kinesis + MQ
Databases & Analytics
  • SQS offers a secure, durable, and available hosted queue that lets you integrate and decouple distributed software systems and components.
  • SQS offers common constructs such as dead-letter queues and cost allocation tags.
  • You can configure the SQS message retention period to a value from 1 minute to 14 days.
    • The default is 4 days.
    • Once the message retention quota is reached, your messages are automatically deleted.
  • After you send messages to a queue, you can receive and delete them.
    • When you request messages from a queue, you can't specify which messages to retrieve.
      • Instead, you specify the maximum number of messages (up to 10) that you want to retrieve.
  • An Auto Scaling group can be used to manage EC2 instances for the purposes of processing messages from an SQS queue.

Message Queues

  • It is a form of asynchronous service-to-service communication used in serverless and microservices architectures.
  • Messages are stored on the queue until they are processed and deleted.
  • They can be used to decouple heavyweight processing, to buffer or batch work, and to smooth spiky workloads.
  • Many producers and consumers can use the queue, but each message is processed only once, by a single consumer.
    • For this reason, this messaging pattern is often called one-to-one, or point-to-point, communications.
      • When a message needs to be processed by more than one consumer, message queues can be combined with Pub/Sub messaging in a fanout design pattern.
Copy link