Guidance for Livestreaming for Retail on AWS
Overview
How it works
These technical details feature an architecture diagram to illustrate how to effectively use this solution. The architecture diagram shows the key components and their interactions, providing an overview of the architecture's structure and functionality step-by-step.
Well-Architected Pillars
The architecture diagram above is an example of a Solution created with Well-Architected best practices in mind. To be fully Well-Architected, you should follow as many Well-Architected best practices as possible.
Operational Excellence
This Guidance uses Amazon IVS to improve processes and deliver business value. Amazon IVS is a managed service that takes the work out of running and managing live video streaming capabilities.
Security
In this Guidance, Lambda uses an AWS Identity and Access Management (IAM) role that only allows it to poll Amazon IVS for image frames that it sends to a SageMaker inference endpoint. It then updates the API Gateway WebSocket connection endpoint. The IAM role prevents Lambda from making any other service calls that are not part of the product discovery workflow.
Reliability
All the services used in this Guidance are managed services. These are designed to be highly available across multiple Availability Zones, within a single Region, so that the workload performs its intended function correctly and consistently when it’s expected to.
Performance Efficiency
CloudFront is a content delivery network (CDN) that sits at the global edge of AWS to deliver data quickly. In this Guidance, it is used to cache product images from the CDN edge network, making downloading faster.
Cost Optimization
Lambda is used to periodically poll the video streams to orchestrate a product discovery workflow, helping customers build and operate cost-aware workloads. The entire process takes place within seconds. By using Lambda , customers are only charged for those seconds of processing. This has a cost advantage over longer running services which may be underutilized in a similar scenario.
Sustainability
The practice of sustainability is understanding the impacts of the services used, quantifying impacts through the entire workload lifecycle, and applying design principles and best practices to reduce these impacts. Well-optimized bandwidth usage is one way of lowering overall energy usage of a solution. In this example, WebSockets from API Gateway are used to maintain a persistent client connection that is used to discover product information. This connection uses significantly less bandwidth than an HTTP polling method, which could send thousands of round-trip HTTP requests in a session.
Disclaimer
Did you find what you were looking for today?
Let us know so we can improve the quality of the content on our pages