Decoupling with Amazon SQS
Amazon SQS is a fully managed message queuing service that helps decouple application components. By enabling asynchronous message queues, SQS allows components of a distributed system to communicate without being connected directly, enhancing fault tolerance and scalability.
Figure 15.2 illustrates a high-level example of an application that enables end users to upload photos to a central S3 bucket. As images are uploaded, an event notification can be configured to trigger a Lambda function.
Figure 15.2 – Event-driven synchronous architecture
The backend Lambda function processes customers’ images and uses Amazon Rekognition to detect objects within the image using its artificial intelligence and machine learning capabilities. The results from the processing could be stored in an Amazon DynamoDB table.
While the architectural design patterns work well, the synchronous design pattern does pose some risks....