キンファミ+AWS ~amplifyによる構成~
チャオ・アミーゴ! 読んでくれてありがとう。ここではサンチョ石際がキンファミを支える技術について説明します。
AWS-Amplifyとそれを使う理由
AWS-Amplifyはすべてのキンファミに利用されたAWSサービスを構成するための構成管理サービスです。キンファミではCognito, S3,Lambda,APIGatewayといった複数のサービスを組み合わせていますから、それらを常に最新の状態に保つ必要があり、またバージョン管理をして、バグがあった場合、原因を追究して排除し、またリリースする活動が必要です。
AWS-Amplifyはそれらをバージョン管理ツールGithubと連携して実施することができます。GithubにPUSHされたソースコードからすべての構成要素に変更を適用することができるのです。
Amplifyで実際に使っている要素
Cognito
認証・認可をつかさどるサービスです。キンファミのエディタはソフトウエアの心臓部分です。だれもが簡単にログインできてはいけない場所なので、TeamKFCのメンバー以外の悪意のあるアクセスから、ソフトウエアを守っています。
APIGateway
インターネットのフロント部分で、kintoneからの通信はすべてこのAPIGatewayにて受け、後続のLambdaに渡しています。
AppSync
kintoneのWebHookでは反応が遅いため、リアルタイム性を重視したWebsocket-PubSub機能によるエネミーとのエンカウント、つまり承認申請のフローを実現する機能がAppSyncにて作成されています。
S3
ファイルストレージサービスとして機能して、画像、音楽、ビデオをキンファミに提供しています。またマップ・イベントエディタで設定されたゲーム情報がキンファミに提供されているのも、この機能からです。
Lambda
サーバーサイド処理として、各サービス間をつなぐ役割をしています。
CloudWatch
各サービスのログ機能です。
まとめ
キンファミではAWSの各サービスを利用していますが、その構成にはAmplifyを利用して管理していることをご説明しました。
AWSの複数のサービスで構成されているため、このサービスを利用することで管理能力を強化するためです。
今日はここまで。アディオス・アミーゴ!