← Back to Home

AWS Re-Architecting Web App

AWS Re-Architecting Web App

Tech Stack

AWS Elastic Beanstalk, EC2, RDS (MySQL), ElastiCache (Redis), Amazon MQ, CloudFront, Route 53, S3, IAM, Security Groups, GitHub


Project Goal

To transform a legacy monolithic web application into a modern, scalable, and reliable architecture using AWS managed services. The primary objectives were to improve performance, enable automation, enhance availability, and eliminate the need for manual server management.


Project Description

This project modernized a previously single-instance EC2 deployment by re-architecting it into a fully managed, cloud-native application using Platform-as-a-Service (PaaS) components from AWS.

Frontend Deployment
  • Repackaged and deployed the frontend on AWS Elastic Beanstalk
  • Integrated:
    • Application Load Balancer for traffic distribution
    • Auto Scaling for performance under variable load
    • Amazon S3 for storing and serving build artifacts
Backend Services
  • Migrated the database from local EC2 to Amazon RDS (MySQL) to enable:
    • Automated backups
    • Multi-AZ availability
    • Easier maintenance and scaling
  • Integrated Amazon ElastiCache (Redis) for in-memory caching and reduced latency
  • Used Amazon MQ for message brokering and asynchronous communication between components
Networking & Content Delivery
  • Configured Route 53 for domain registration and DNS routing
  • Integrated Amazon CloudFront as a CDN for global asset delivery
  • Enabled secure communication with SSL certificates (HTTPS)
Security Configuration
  • Designed custom Security Groups to isolate and control traffic flow between application layers
  • Applied IAM roles and policies to enforce least-privilege access for services and resources
Automation & Configuration
  • Used environment variables and custom deployment scripts to configure runtime parameters
  • Managed source code via GitHub, ensuring reproducible builds and collaborative workflows

Outcomes

  • Fully eliminated manual server management by leveraging PaaS and managed services
  • Reduced deployment time and minimized configuration errors
  • Significantly increased application scalability and fault tolerance
  • Improved global performance and secure delivery with CDN and HTTPS integration