Application Integration Flashcards
How does Simple Notification Service (SNS) work?
o Simple Notification Service (SNS) coordinates and manages the sending and delivery of messages: messages sent to a Topic are delivered to Subscribers
o SNS is integrated with many AWS Services and can be used for certain event notifications (e.g. CloudFormation stack creation)
o SNS can also be used for mobile push notifications
o SNS Components:
Topic: an isolated configuration for SNS, including permissions. Messages (<=256Kb) are sent to a topic, and subscribers to that topic receive it
Subscriber: Endpoints that receive messages for a topic (HTTP/S, email, SQS, mobile push notifications, Lambda functions, SMS)
Publisher: An entity that publishes messages to queue (applications, AWS services)
o Fully resilient, as it is designed for mission critical notifications
o Supports encryption at rest and in transit, and resource policies for subscribers’ access
How does Simple Queue Service (SQS) work?
o Simple Queue Service (SQS) provides fully managed, highly available message queues for inter-process/server/service messaging
o SQS is used mainly to created decoupled architectures (asynchronous communication)
o Messages are added to queues and retrieved via polling
Short polling: available messages are returned ASAP. A short poll may return 0 messages, and causes increased number of API calls
Long polling: waits for messages for a given WaitTimeSeconds; more efficient, as less empty API calls and responses
o Supports 2 types of queues:
Standard queues: distributed and scalable to nearly unlimited message volume, order is not guaranteed, and messages can be delivered multiple times
FIFO queues: guarantees first in – first out delivery and single delivery of messages, but throughput is limited to 3,000 messages/second with batching, or 300 without
o Each SQS message can contain up to 256KB of data, but can link data stored in S3 for any larger payloads
o When a message is polled, it is hidden in the queue: if not deleted, after a VisibilityTimeout period, it will return to the queue
o Queues can be configured with a maxReceiveCount, allowing messages that are failing to be moved to a dead-letter queue
o Lambda functions can be invoked based on messages on a queue, offering better scaling and faster response than AutoScaling groups, for any messages that can be processed quickly
How does Elastic Transcoder work?
o Elastic Transcoder is an AWS service that allows you to convert media files from an input format to one or more output formats
o It is delivered as a service, and you are billed on a per-minute basis while using it
o A job defines the input objects and up to 30 output objects/formats. Jobs are added to a pipeline in the same region and use the buckets defined in the pipeline for input/output
o A pipeline is a queue for jobs: it stores source and destination settings, notification, security and other settings. Jobs are processed in the order they are added, as resource allow. Pipelines can send notifications as jobs progress through various states: these might notify an admin or initiate further event-driven processing
o Presets contain transcoding settings and can be applied to jobs to ensure output compatible with various devices, such as iPhones, tablets or other form factors