Objectives: Demonstrate the robustness of our architectural framework by simulating an application environment using application hosted on AWS. This experiment aims to showcase the effectiveness of the proposed architecture in handling high traffic conditions, ensuring scalability, and adhering to best practices for availability and monitoring
Develop a CloudFormation template of the mock application to represent the proposed architecture. Include configurations for EC2 instances, Auto Scaling, Load Balancer, and CloudWatch.
Set up the Load Balancer to evenly distribute incoming traffic across multiple EC2 instances. See Fig for reference to Load Balancer setup for your experiment Configure to operate across different availability zones for enhanced reliability.
Integrate EC2 Auto Scaling to adjust resources based on traffic patterns and demand.
Configure AWS CloudWatch for real-time monitoring of the hosted application. Set up custom metrics and alarms to trigger notifications in case of threshold breaches.
Simulate high traffic conditions with Locust to observe the Load Balancer efficiently distributing workloads. Refer to Fig below for Locust workload generation. Monitor the system's response to scaling events triggered by Auto Scaling policies.
Intentionally trigger threshold breaches to validate responsiveness of configured Alarms. Ensure timely notifications and responses to deviations from expected performance.
In our specific experimental setup, we leverage a consistent high-traffic workload to assess the application's ability to handle heavy loads.This approach ensures a thorough examination of the application's resilience and scalability under demanding conditions.