Migrating Core Business
Applications to the Cloud
Client Profile
An established European company specializing in winter services and ground maintenance.
Category
AWS
Project Overview
The decision to move their primary business application to the cloud was heavily influenced by the need for scalability and availability. The current infrastructure couldn’t adapt well to sudden increases in workload, often requiring manual handling of traffic surges due to seasonal fluctuations in business. Addressing the underutilization of computing resources during slower periods was a challenge that necessitated a robust cloud approach.
Business Limitations
The software caters to field workers, supervisors, and managers. When there are service disruptions, it creates a domino effect, causing delays in tasks for both operators and managers and ultimately affecting customer service.
- During peak seasons, managing high volumes of traffic becomes a challenge.
- The costs to maintain server infrastructure are high due to fixed expenses.
- Only specific segments of the infrastructure are adaptable and can expand or contract as needed.
- Vertical scaling for servers is not feasible.
- Human intervention is necessary to handle sudden spikes in traffic since servers are managed manually.
- Critical servers like load balancers and databases are at risk of experiencing downtime if they fail.
- There’s no backup plan in case of a complete data center breakdown.
THE MAVA PARTNERS SOLUTION
The decision was made to shift the current work processes from on-site systems to AWS. This move promises enhanced efficiency and substantial reductions in IT expenses. To meet the specifications, we recommended distinct setups for development, staging, and production environments. We suggested creating separate AWS accounts for each phase to ensure clear separation and minimize the impact in case of problems or system failures.
Positive Outcomes for Business
- Efficiencies provided by AWS led to a 45% cost decrease.
- Deployment time for infrastructure resources plummeted from weeks to mere minutes.
- Swift scalability and effortless workload management saved considerable time and effort.
Key Features
- A public-facing Application Load Balancer evenly distributed traffic across EC2 instances spread across different availability zones to maintain high accessibility.
- Automatic scaling was activated to handle abrupt increases in traffic by dynamically adjusting the number of resources.
- Socket driver servers, comprising two m4.large EC2 instances, were placed within an auto-scaling group to facilitate horizontal scaling and ensure robust availability.
- To mimic the functionalities of Amazon’s Simple Queue Service (SQS), the existing queueing system was revamped for improved compatibility and performance.
- Leveraging the power of AWS ElastiCache’s Redis cluster, a two-node setup was utilized for its rapid in-memory caching capabilities, ensuring both high availability and swiftness.
- The database backend operated on AWS RDS, employing MySQL for data management and storage.
- Amazon CloudFront, a Content Delivery Network (CDN), was utilized to expedite content delivery through edge caching mechanisms.
- AWS Route53, serving as the DNS service, handled domain routing and management for the system.