Case Study: Using AWS as infrastructure for high traffic “9999 Tet”

Case Study: Using AWS as infrastructure for high traffic “9999 Tet”

ABOUT AIC GROUP

AIC Group was founded in 1999 as the Trade Labor Center (Tralacen) from a base of only 5 people and quickly emerged as a giant, trading in such fields as Smart Nation, Science and Technology, Firefighting and Emergency Response, Intelligent Transport System, Vocational Training, Smart Education, Smart Healthcare, Natural Resources and Environment. Using technology as a centerpoint to both expand their business and develop the Vietnamese nation, with AIC’s current base of over 1000 people, international offices, and assets valued at several trillions of VND, the company continues to be poised for growth.


 
CUSTOMER REQUIREMENTS

AIC Group needed to make an application for Vietnamese users during the event of Vietnamese Lunar New Year or “Tet”. Rikkeisoft was contracted for design, development, deployment, and maintenance services. “9999 Tet” was designed to be an all-in-one application, providing information on Tet in categories such as culture, entertainment, spirituality, traffic, medicine, and shopping etc. Among other things, this application had the feature “Lucky Money Shake”, where users could shake their mobile devices to receive ”lucky money” in the form of gift cards.
 
Due to the nature of the application, it was expected to receive a surge in traffic in the period leading up to and following Tet. After Tet, traffic was expected to drop significantly.
 
AIC wanted a flexible solution for infrastructure that could automatically scale up during peak times and then scale back to normal after. Security-wise, the solution needed to be robust against malicious attacks. The solution also needed to not require too much human effort to monitor and maintain.
 

OUR PROPOSED SOLUTION

Due to the nature of their business, AIC was reliant on physical infrastructure. In this scenario though, we realized that a cloud-based approach would be more time and cost-effective as there would be only 1.5 months for the entire development and release process. Therefore, we proposed AWS as the infrastructure provider for its scalability and flexibility.
 
The backend was developed in Python Django as a standard web application. AWS Elastic Beanstalk was used to streamline the deployment process. For auto-scalability, we proposed using AWS CloudWatch to monitor loads and AWS Autoscaling to manage clusters of AWS EC2. AWS LoadBalancer was proposed to connect to those clusters.
 
For data storage, we proposed combining three services:

  1. AWS ElasticCache for application caching.
  2. AWS RDS for database. For this instance, RDS MySQL cluster was proposed with active replica configuration.
  3. AWS S3 for storage and distribution for media including published content, user-generated content, and assets such as plugins and static contents.

For security, we proposed VPC to isolate private (dev environment and nodes running CMS) and public networks (nodes for application API).
 
AWS Route 53 was proposed for domain name management.
 
Result:
During peak hours, we increased the ElasticCache to boost performance as most users were requesting the same content. After the event, ElasticCache was scaled down to save costs.
There were no reported incidents of server overload during the period before and after Tet.
 
The application served more than 1 million users and performed well.
More than 1 million app installations on Google Play Store and Apple Store
More than 8000 users online during peak hours
More than 1.2 million transactions in Lucky Money Shake
 
Customer feedback
Our customer was happy with our solution based on AWS infrastructure, in terms of both quality of service and cost-effectiveness.
This project was the first experience of AIC with AWS and is considered a success.
 
Duration of project: 1.5 month
 
 

SYSTEM ARCHITECTURE

 

 

SUPPORT TEAM

Partner name: Rikkeisoft Co., Limited
Case study: Using AWS as infrastructure for high-traffic application “9999 Tet” 
Scope of work: Development, deployment and maintenance
OS: Amazon Linux
Database: MySQL
AWS services: Amazon Elastic Beanstalk, Amazon EC2, Amazon RDS for MySQL, Amazon S3, Amazon Elastic Load Balancing, Amazon ElastiCache for Redis, Amazon CloudFormation, Amazon CloudWatch, Amazon Route 53


 
CUSTOMER INFORMATION

Customer name: AIC Joint Stock Company
Industry: Non disclosure
Number of employees: 1200+
Founded year: 2005
System URL: https://api.tetvietaic.com/api/appstatus