Case Studies | Room to Read - Cloudelligent

Room to Read Enhances Application Performance by Leveraging AWS Services

About Room to Read

Room to Read is a non-profit organization that has been collaborating with governments around the world to deliver positive outcomes at scale. They aim to achieve this goal by helping children in historically low-income communities develop literacy skills. They also support girls build various skills to succeed in school and negotiate key life decisions. The organization has been making active efforts to spread its idea by leading community-based projects in several countries.

Business Challenge

Room to Read faced several challenges within their AWS infrastructure:

  • Latency issues affecting application performance
  • Latency issues affecting application performance
  • Rising costs on the monthly AWS bills• Non-compliance with AWS Well-Architected Framework best practices.

The customer sought a solution that would help them optimize the speed and performance of their applications. In addition, the non-profit organization needed to reduce monthly expenses to advance their noble mission.

Cloudelligent’s Solution

Our Solutions Architects worked closely with Room to Read to get a complete understanding of their performance and budget requirements. We spent time analyzing all aspects of their architecture and implemented the most effective solution to balance performance and spend.

Room to Read Leverages Several Amazon Web Services

  • EC2: Virtual server deployed for computing. Also acts as Bastion Host to provide secure connection to DB instances and EFS.
  • ECS (Fargate): Application is running on containers in ECS services and is auto scaled.  
  • Route 53: Domain is registered and resolved the DNS of Load balancer. 
  • Aurora: Application database that stores all the records related to application has a standby in another Availability Zone to ensure high availability and DR (Disaster Recovery). 
  • VPC: Single VPC with 6 subnets, 3 in each Availability Zone. 
  • S3: Stores the static content related to the application and all the logs such as for CloudWatch, VPC, Flow Logs, New Relic, nOps billing reports, and Terraform state. 
  • AWS Organizations: Manages the multi-account environment. 
  • OpenSearch: Provides ability for asynchronous search after indexing the data from Aurora DB. 
  • EFS: Serves the purpose of volume storage and allowing container to persist their stage in a very cloud-native way. 
  • CodeBuild: Build the images from the bitbucket source and push it to ECR (Elastic Container Registry). 
  • ECR: Maintains all the images in a registry with updated versions. 
  • CloudFront: Static content of web applications is cached over edge locations for better content delivery. 
  • CodeDeploy: Automates the deployment of applications by avoiding downtime during the deployment process. 

Third-Party Tools and Services

  • New Relic: Integrated with AWS cloud environment via IAM (Identity and Access Management) role and provides detailed monitoring of infrastructure as well as API monitoring using synthetics.  Integrated with AWS cloud environment via IAM (Identity and Access Management) role and provides detailed monitoring of infrastructure as well as API monitoring using synthetics.
  • nOps: Integrated with AWS cloud via IAM role and helps to ensure that architecture is compliant with the 6 pillars of the Well-Architected Framework. .

Cloudelligent’s Solution Architecture for Room to Read

Our team of experts successfully delivered an end-to-end solution for Room to Read, utilizing the latest practices from the AWS Well-Architected Framework. We optimized both their infrastructure and application to ensure seamless performance and scalability.

Cloudelligent deployed Room to Read’s application on ECS (Fargate) within their production environment. To ensure the persistence of the container’s state, we integrated Amazon EFS with the ECS container that serves as a volume storage. To manage their production database, we used Amazon Aurora DB clusters which ensure high availability and disaster recovery through a multi- AZ standby instance. Additionally, Amazon S3 buckets are utilized to store objects and various logs related to the applications. To ensure the highest level of security, we created these buckets under best practices and encrypted them with AWS KMS keys.

Our team also integrated nOps with the customer’s accounts via the IAM role, which helps ensure that their architecture is compliant with the six pillars of the AWS Well-Architected Framework. By doing so, we were able to provide Room to Read with an efficient and robust system that meets their needs and supports their mission.

Results and Benefits: Exceeding Expectations

Cloudelligent’s solutions successfully addressed all of Room to Read’s challenges and delivered numerous benefits.

   

Looking to boost the performance of your applications? Book a FREE Application Modernization Assessment with us to learn how to build sustainable systems and deliver better software – faster.

Elevated Application Performance

The latency of Room to Read’s applications was reduced by migrating the PostgreSQL DB to Amazon Aurora DB clusters, which provides faster throughput. Amazon S3 buckets are utilized for storing their application’s static objects which provide low latency and high throughput performance. Amazon EFS volumes are integrated with Amazon ECS to provide persistent storage of containerized applications.

Enhanced Reliability, Availability, and Scalability

Cloudelligent replicated Amazon Aurora DB clusters in a different Region for fast recovery and improved data availability. Aurora automatically backs up cluster volumes and retains restore data for the backup retention period. Continuous and incremental backups allow restoring data up to the latest 5 minutes of activity. Amazon EFS provides elastic and scalable storage for their applications.

Increased Cloud Savings

We conducted a detailed analysis of Room to Read’s existing AWS environment. Their team was able to right-size AWS resources that were either being underutilized or overutilized compared to what was required. We also terminated all the zombie assets. This helped Room to Read reduce up to 40% of their overall costs on their AWS monthly bill.

About Cloudelligent

Cloudelligent is an AWS Advanced Consulting Partner that helps businesses architect, build, migrate, and manage their workloads to accelerate their journey to the agile cloud. We support organizations to achieve the desired outcomes and reach new emerging global markets with a diverse team of AWS-Certified Solutions Architects and Engineers.