「9999 Tetアプリ」高トラフィック対応、AWSをインフラとして使用

「9999 Tetアプリ」高トラフィック対応、AWSをインフラとして使用

パートナー名:株式会社リッケイソフト
ケーススタディ:「9999 Tet」というアプリケーションのインフラストラクチャとしてAWS(アマゾンウェブサービス)を使用しています。
作業範囲:開発、展開、およびメンテナンス

OSAmazon Linux

データベースMySQL

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

 

顧客情報:

顧客名:AIC Joint Stock Company
業界・分野:非開示
従業員数:1200名以上
設立年:2005
システムURLhttps://api.tetvietaic.com/

 

顧客からの要求:

AICは、Tetとして知られるベトナムの旧正月のイベントにおいて、ベトナム人向けのアプリケーションを立案し、 Rikkeisoftは、その設計-開発-展開および保守サービス全体を請け負いました。「9999 Tet」は、オールインワンアプリケーションとして設計されており、文化、娯楽、慣習、交通、医療、ショッピングなどのさまざまなTetに関するカテゴリの情報を提供しています。

このアプリケーションは年末年始にアクセス数の集中が予想されていました。たとえば、このアプリケーションには「ラッキーマネーシェイク」と呼ばれる機能があり、ユーザーは自分の携帯電話を振って年越しの間にギフトカードの形でラッキーマネーを受け取ることができました。 Tet後、アクセス数は大幅に減少すると予想されていました。

アクセス数が集中する際、自動的にスケールアップし、その後アクセス数が減るとスケールバックできる柔軟なインフラストラクチャが求められました。

悪意のある攻撃に対して強固なセキュリティーを保つ一方、監視とメンテナンスに多くの労力を使わないソリューションが求められました。

 

解決策:

AICのビジネスの性質により、顧客は物理的なインフラストラクチャに依存しています。
ただし、この場合では、開発及びリリースプロセス全体で1.5か月しかいないためクラウドベースのアプローチの方がより時間と費用効果が高くなります。
そのため、拡張性と柔軟性により、AWSを提案しました。

バックエンドはPython Djangoで標準のウェブアプリケーションとして開発されたため、AWS Elastic Beanstalkは、展開プロセスを合理化するために使用されました。自動的な拡張性については、AWS CloudWatchを使用し、負荷を監視し、AWS Autoscalingを使用してAWS EC2のクラスターを管理しました。

AWS LoadBalancerは、これらのクラスターに接続するために提案されました。
データ保存については、3つのサービスの組み合わせを提案しました。
- アプリケーション保存用のAWS ElasticCache
- データベース用のAWS RDS、私たちの場合、RDS MySQLクラスターはアクティブ・レプリカ構成で提案されました。
- 公開コンテンツ、ユーザー生成コンテンツ、プラグインや静的コンテンツなどのアセットを含むメディアの保存と配信用のAWS S3

セキュリティについては、プライベート(開発環境とCMSを実行するノード)を分離するために、そしてネットワーク(アプリケーションAPIのノード)を公開するためにVPCを提案しました。
AWS Route 53はドメイン名管理にも提案されました。

 

結果:

アクセス数が集中する際、ほとんどのユーザーが同じコンテンツを閲覧するため、ElasticCacheを増やしてパフォーマンスを向上させました。

イベント後、ElasticCacheはコストを節約するために小さな設定に縮小されました。

旧正月の期間中にサーバー過負荷が報告されることはありませんでした。

このアプリケーションは、

100万人以上のユーザーにサービスを提供し、旧正月の期間中にうまく運用することができました。

  • Google PlayストアおよびApple ストアでの100万件以上のアプリのインストール
  • ピークする時に8000人以上のユーザーがオンライン
  • ラッキーマネーシェイクの120万件以上の取引

 

顧客の声:

顧客は、サービスの品質と費用対効果の両方の点で、AWSインフラストラクチャに基づくソリューションに満足しています。

このプロジェクトはAICにとってAWSを利用した最初の案件でしたが、成功と判断され、今後より多くのユースケースにつながることでしょう。

 

  • プロジェクト期間: 1.5ヶ月

 

  • システムアーキテクチャー