本日開催されたAWS Summit Online 2021で「forTUNE meets」に関するセッションがありました。
CUS-29『forTUNE meets』Amazon Chime SDK の使用例と開発プロセスについて
aws.amazon.com
私は普段、IT業界でエンジニアの仕事をしているので、ミーグリのシステムがどのようになっているのか?ローンチされたときから興味津々でした。以前公開された以下の記事でその舞台裏を少し知ることができましたが、システム的な話は載っていませんでした。
今回のセッションではアーキテクチャや利用技術を具体的に知ることができて良かったです。ざっとまとめると
- 基本的にはAWSの各種サービスを組み合わせて構成されている
- 一部、GoogleのFirebaseなどを利用している
- WebRTC(映像と音声)はAmazon Chimeを使っている
というものです。
Chimeは今回のカンファレンスのようにオンラインで多人数が集まって使うことを想定している技術のため、ミーグリのように1対1の場を待ち行列式に細かくルームを切り替える使い方は想定されていないようです。そこで切り替えの管理が必要になり、リアルタイムな処理を行うためにリレーショナルデータベースではなくNoSQLを採用したとのこと。現状はFirebaseで今後はAWSのRedisに切り替えていく予定と話していました。(最初からRedisにしなかったのはなぜ...?という感じですが)
AWSの構成図も紹介されていました。使われているものはEC2やS3、Route53、API Gateway、CloudWatch、Lambdaなどよくあるものがほとんどでした。
なお、Chimeの制約上、現在のミーグリの画質や音声が今よりいいものになる可能性が低いことです。これは発表されている開発者の方も歯痒そうでした。個人的にはぜひ他のWebRTC(SkyWayやTwilioなど)も今後ぜひ検討して欲しいなぁと思いました。AWS一択のようなのでその選択肢はなさそうですが...。
メンバーが見ている管理画面の紹介もありました。スライド画像がまとめサイトなどに掲載されているようなので、興味がある方はそちらをみてください。(権利や公開条件がグレーなので本サイトでは転載しません)
メンバーの安全性を守るような機能がいくつもあるようなので良かったです。(「危ない人かも」ボタンなどもありました)