Solution Design
Last updated
Last updated
Consider a web application that is essentially social media. Letโs begin by implementing this using conventional/on-premise architecture methodologies.
The user may use a browser to navigate. When they input the URL, the DNS is first resolved. Given the serverโs heavy load, a load balancer is utilized to distribute it. Numerous web servers and application servers connect with the database. Letโs imagine there are two types of databases in use: relational and non-relational (NoSQL). To reduce disk storage, material is stored independently. Now that users may upload media, a content filter that screens and saves material in external storage should be in place. The user may use a desktop browser as well as a mobile/tablet device. Therefore, media should be accessed through CDNs, which will expedite content delivery. Given that mobile apps may support many video formats, the solution should include a video converter. Click Stream Data, on the other hand, is fed and kept in external storage before being delivered to the data warehouse for further analysis.
Now, let us implement this using AWS Services โ
We will replace DNS with Amazonโs own DNS, Route 53. The traffic will then pass via ELB and be distributed to EC2 instances using EBS. The EC2 Instance is configured with Auto-Scaling, so it will increase on-demand. Relational DB Service RDS and NoSQL DB Service Dynamo DB are linked to the Instances. The user-uploaded Media files will be screened using Rekognition and saved in the S3 Bucket. The saved Data will then be delivered to Data Warehousing Redshift, where it can be queried using Athena. Quicksight may be used to get broad insights. This whole architecture will be contained inside a VPC, which will be accessible through Edge Locations. The Solution will also include SES, SNS, and SQS Services for various mail, notification delivery, and message querying needs. Cloudwatch is capable of monitoring the whole system.