3.7 Application Integration and Other Services
Key Takeaways
- Amazon SQS (Simple Queue Service) is a fully managed message queuing service for decoupling application components.
- Amazon SNS (Simple Notification Service) is a pub/sub messaging service for sending notifications to multiple subscribers.
- Amazon EventBridge is a serverless event bus for building event-driven architectures by routing events between AWS services and applications.
- AWS Step Functions orchestrate multiple AWS services into serverless workflows with visual workflow design.
- Amazon API Gateway creates, publishes, and manages REST and WebSocket APIs at any scale.
Application Integration and Other Services
Messaging and Event Services
Amazon SQS (Simple Queue Service)
Amazon SQS is a fully managed message queuing service that enables you to decouple and scale microservices, distributed systems, and serverless applications.
| Feature | Detail |
|---|---|
| Type | Pull-based message queue |
| Message Retention | 1 minute to 14 days (default: 4 days) |
| Max Message Size | 256 KB |
| Queue Types | Standard (best-effort ordering, at-least-once delivery) and FIFO (exact ordering, exactly-once processing) |
| Scaling | Virtually unlimited throughput |
| Use Case | Decoupling components, buffering requests, task queues |
Example: An order processing system places orders in an SQS queue. Worker instances process orders from the queue at their own pace, preventing overload during traffic spikes.
Amazon SNS (Simple Notification Service)
Amazon SNS is a pub/sub messaging service for sending messages to multiple subscribers simultaneously.
| Feature | Detail |
|---|---|
| Type | Push-based pub/sub messaging |
| Subscribers | SQS, Lambda, HTTP/HTTPS, email, SMS, mobile push |
| Topics | Channels for message delivery to multiple subscribers |
| Filtering | Message filtering policies to route messages to specific subscribers |
| Use Case | Fan-out notifications, alerting, event-driven architectures |
SQS vs. SNS
| Feature | SQS (Queue) | SNS (Pub/Sub) |
|---|---|---|
| Model | Pull — consumers poll for messages | Push — messages pushed to subscribers |
| Delivery | One consumer processes each message | All subscribers receive every message |
| Use Case | Decoupling, task queues | Fan-out notifications, alerts |
| Persistence | Messages retained until processed | No persistence (deliver and forget) |
On the Exam: SQS = queue (one consumer processes each message). SNS = pub/sub (all subscribers get every message). They are often used together: SNS fans out to multiple SQS queues.
Amazon EventBridge
Amazon EventBridge is a serverless event bus for building event-driven architectures.
- Routes events between AWS services, SaaS apps, and your own applications
- Rules match incoming events and route them to targets
- Schema Registry discovers and stores event schemas
- Previously known as CloudWatch Events
Use case: When an EC2 instance state changes, EventBridge triggers a Lambda function to send a notification.
Workflow Orchestration
AWS Step Functions
Step Functions coordinate multiple AWS services into serverless workflows. You define workflows as state machines with a visual designer.
Use cases: Order processing, data pipelines, human approval workflows, ML model training pipelines.
API Management
Amazon API Gateway
API Gateway creates, publishes, and manages REST, HTTP, and WebSocket APIs at any scale.
| Feature | Detail |
|---|---|
| API Types | REST, HTTP, WebSocket |
| Integration | Lambda, EC2, any HTTP endpoint |
| Features | Throttling, caching, API keys, authorization |
| Scaling | Automatic scaling |
Common pattern: API Gateway + Lambda = fully serverless API backend.
Developer and Deployment Services
| Service | Purpose |
|---|---|
| AWS Amplify | Full-stack web and mobile app development platform |
| AWS AppSync | Managed GraphQL API service |
| AWS Device Farm | Test web and mobile apps on real devices |
Internet of Things (IoT)
| Service | Purpose |
|---|---|
| AWS IoT Core | Connect and manage IoT devices at scale |
| AWS IoT Greengrass | Run local compute, messaging, and ML at the edge |
End-User Computing
| Service | Purpose |
|---|---|
| Amazon WorkSpaces | Managed virtual desktops (Desktop as a Service) |
| Amazon AppStream 2.0 | Stream desktop applications to any device |
| Amazon WorkDocs | Managed document storage and collaboration |
Migration and Transfer
| Service | Purpose |
|---|---|
| AWS Migration Hub | Track migration progress |
| AWS Application Migration Service | Automate lift-and-shift migrations |
| AWS Database Migration Service (DMS) | Migrate databases with minimal downtime |
| AWS Transfer Family | SFTP/FTPS/FTP file transfers to S3 |
Other Services to Know
| Service | Purpose |
|---|---|
| Amazon Connect | Cloud-based contact center |
| AWS Ground Station | Satellite communication as a service |
| AWS Marketplace | Digital catalog of third-party software (AMIs, SaaS, data) |
| AWS Service Catalog | Create and manage catalogs of approved IT services |
| AWS License Manager | Manage software licenses from vendors |
| AWS Well-Architected Tool | Review your workloads against best practices |
What is the key difference between Amazon SQS and Amazon SNS?
A company wants to build a serverless REST API backend. Which combination of services should they use?
Which AWS service provides a serverless event bus for routing events between AWS services and applications?
Which service coordinates multiple AWS services into serverless workflows using visual state machines?
Which AWS service provides managed virtual desktops that allow users to access a Windows or Linux desktop from any supported device?
A company needs to migrate their on-premises Oracle database to Amazon Aurora PostgreSQL. Which AWS service can convert the database schema?
Which AWS service provides a digital catalog where customers can find, buy, and deploy third-party software?
Which service provides a fully managed ETL (Extract, Transform, Load) capability for preparing data for analytics?
A company wants to create interactive business intelligence dashboards from their data. Which AWS service should they use?
Which AWS service would you use to translate text from English to Spanish in real time?
A company wants to extract text and data from scanned invoices and receipts. Which AWS AI service is BEST suited?