Tên đối tác: Rikkeisoft Co., Limited
Câu chuyện khách hàng: Sử dụng AWS làm cơ sở hạ tầng cho ứng dụng “9999 Tết” có lưu lượng truy cập cao
Phạm vi công việc: Phát triển, triển khai và bảo trì
Hệ điều hành: Amazon Linux
Cơ sở dữ liệu: MySQL
Dịch vụ AWS: 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
Thông tin khách hàng:
Tên khách hàng: Công ty cổ phần AIC
Ngành nghề: Không được công khai
Số lượng nhân viên: hơn 1200 người
Năm thành lập: 2005
Địa chỉ URL hệ thống: https://api.tetvietaic.com/api/appstatus
Yêu cầu của khách hàng:
Khách hàng AIC Group có kế hoạch phát triển một ứng dụng dành cho người dùng Việt Nam nhân dịp Tết Nguyên đán. Rikkeisoft được ký hợp đồng cung cấp toàn bộ dịch vụ thiết kế, phát triển, triển khai và bảo trì. “9999 Tết” được thiết kế như một ứng dụng toàn diện, cung cấp thông tin về Tết trong nhiều danh mục khác nhau như văn hóa, giải trí, tâm linh, giao thông, y tế và mua sắm, v.v.
Do tính chất của ứng dụng, dự kiến sẽ có sự gia tăng đáng kể lưu lượng truy cập trong giai đoạn xung quanh Đêm giao thừa. Ví dụ, ứng dụng này có một tính năng đặc biệt gọi là “Lucky Money Shake” cho phép người dùng lắc thiết bị di động của họ để nhận tiền may mắn dưới dạng thẻ quà tặng vào Đêm giao thừa. Sau Tết, lưu lượng truy cập dự kiến sẽ giảm đáng kể.
AIC muốn một giải pháp cơ sở hạ tầng linh hoạt có khả năng tự động mở rộng quy mô trong những thời kỳ cao điểm, và giảm quy mô trở lại mức tải bình thường sau đó. Về bảo mật, giải pháp mong muốn phải vững chắc chống lại các cuộc tấn công độc hại. Mặt khác, giải pháp không được yêu cầu quá nhiều nỗ lực của con người để giám sát và bảo trì.
Giải pháp được đề xuất:
Do tính chất hoạt động của khách hàng, AIC đã dựa vào cơ sở hạ tầng vật lý; tuy nhiên, chúng tôi nhận thấy rằng trong trường hợp này, một cách tiếp cận dựa trên đám mây sẽ hiệu quả hơn về thời gian và chi phí vì chỉ có 1,5 tháng cho toàn bộ quá trình phát triển và phát hành. Do đó, chúng tôi đề xuất AWS làm nhà cung cấp cơ sở hạ tầng nhờ khả năng mở rộng quy mô và tính linh hoạt của nó.
Backend được phát triển bằng Python Django như một ứng dụng web tiêu chuẩn, vì vậy AWS Elastic Beanstalk được sử dụng để hợp lý hóa quá trình triển khai. Để tự động mở rộng quy mô, chúng tôi đề xuất sử dụng AWS CloudWatch để giám sát tải và AWS Autoscaling để quản lý các cụm AWS EC2. AWS LoadBalancer được đề xuất để kết nối với các cụm đó.
Để lưu trữ dữ liệu, chúng tôi đề xuất kết hợp ba dịch vụ:
AWS ElastiCache cho bộ đệm ứng dụng.
AWS RDS cho cơ sở dữ liệu. Trong trường hợp của chúng tôi, cụm RDS MySQL được đề xuất với cấu hình sao chép hoạt động.
AWS S3 cho lưu trữ và phân phối phương tiện bao gồm nội dung được xuất bản và nội dung do người dùng tạo ra và các tài sản như plugin hoặc nội dung tĩnh.
Để bảo mật, chúng tôi đề xuất VPC để cách ly các mạng riêng (môi trường phát triển và các nút chạy CMS) và mạng công cộng (các nút cho API ứng dụng).
AWS Route 53 cũng được đề xuất cho quản lý tên miền.
Kết quả:
Trong giờ cao điểm, chúng tôi tăng ElastiCache để cải thiện hiệu suất vì hầu hết người dùng đang yêu cầu nội dung tương tự. Sau sự kiện, ElastiCache được giảm quy mô thành một phiên bản nhỏ hơn để tiết kiệm chi phí.
Không có sự cố quá tải máy chủ nào được báo cáo trong giai đoạn xung quanh Tết Nguyên đán.
Ứng dụng phục vụ cho hơn 1 triệu người dùng và hoạt động tốt trong Tết.
Hơn 1 triệu lần cài đặt ứng dụng trên Google Play Store và Apple Store
Hơn 8000 người dùng trực tuyến vào thời điểm cao điểm
Hơn 1,2 triệu giao dịch Lucky Money Shake.
Phản hồi của khách hàng:
Khách hàng của chúng tôi rất hài lòng với giải pháp AWS của chúng tôi, về cả chất lượng dịch vụ và hiệu quả chi phí.
Dự án này là trải nghiệm đầu tiên của AIC với AWS và được coi là thành công, điều này sẽ dẫn đến nhiều trường hợp sử dụng hơn trong tương lai.
Thời gian thực hiện dự án: 1,5 tháng
Kiến trúc hệ thống:










