https://www.udemy.com/aws-certified-solutions-architect-associate/learn/v4/t/lecture/2050804?start=0
Simple Queue Service (SQS)
Amazon AWS is a web service that gives you access to a message queue that can be used to store messages while waiting for a computer to process them.
- Pull based, not push based
- 256 KB max message size
- Kept in the queue for 1 min up to 14 days
- Default = 4 days
- Visibility Timeout starts after a reader picks up the message.
- When the message is completed, it is deleted from the queue
- If not completed before the timeout, the message becomes visible again and another reader will process it.
- This could result in the same message being processed twice.
- Visibility Time Out maximum=12 hours
- SQS guarantees your messages will be processed at least once
- Long Polling is a way to retrieve messages from your SQS queues.
- Short polling returns immediately, even if the message queue is empty.
- Long polling only returns a result
- When a message is available in the queue
- After the Long Poll times out.
- Queues can be standard or FIFO
Simple Workflow Service (SWF)
| SWF | SQS | |
|---|---|---|
| Max Retention | 14 Days | 1 Year |
| Orientation | Messge | Task |
| Task Assignment | Only Once | Once or more |
| Task Tracking | All Tasks and Events | Tracking must be designed into the application |
SWF Actors
- Workflow Starters – An application that can initiate a workflow. Could be your e-commerce wiebsite when placing an order or a mobile app searching for bus times.
- Deciders – Control the flow of activity tasks in a workflow execution. If something has finished or fails in a workflow, a Decider decides what to do next.
- Activity Workers – Carry out the activity tasks.
Simple Notification Service (SNS)
- Subscribers
- HTTP
- HTTPS
- Email-JSON
- SQS
- Application
- Lambda
- Push based, not poll based like SQS
- Subscribers must ‘subscribe’ to prevent spamming
Elastic Transcoder
- Converts media files from their original source format to different formats that will play on smart phones, tablets, PCs, etc.
- Provides transcoding presets for popular output formats, which means that you don’t need to guess about which settings work best on particular devices.
- Pay based on the minutes that you transcode and the resolution at which you transcode.
Kinesis
Kinesis Streams
- Data is stored in Shards
- 1MB/s in, 2MB/s out
- Scaling depends on the number of Shards
- Output can go basically anywhere
Kinesis Firehose
- Data collected is sent immediately to:
- S3
- Lambda
Kinesis Analytics
- Sits on top of Streams or Firehose
- Allows queries to be ran then sent to
- S3
- Redshift
- Elasticsearch Cluster
Kinesis Exam Tips
- Know the difference between Streams and Firehose
- Streams use Shards
- Understand Analytics sits on top of Streams and Firehose.