Mirrativのシステムアーキテクチャ
アーキテクチャの工夫ポイント
このアーキテクチャは一言で言えば「適材適所」です。
Mirrativは、スマホの画面を共有しながらライブ配信が行えるサービスを提供しているのですが、ライブ配信の特徴として、トラフィックの大きい映像/音声とトラフィックはそこまで大きくないAPI通信の大きく2種類に分けられます。
Google Cloud では、高いスケーラビリティを活かしてバックエンドサービスを構築しています。また、カスタマイズ豊富なSaaSサービスを用いてCI/CDや社内アプリ等もGoogle Cloud上で構築しています。
IDCF Cloud では、物理的なハードウェア占有サーバ(ベアメタルサーバ)を活用して高トラフィックを処理しています。高いスケーラビリティは確保できませんが、代わりにハードウェアロードバランサーによる高可用性を確保しています。ネットワーク周りにおいても帯域契約となっているため、一般的なパブリッククラウドと比べてネットワークコストも抑えられるようになっているのも特徴です。
現在のアーキテクチャの課題と今後の改善予定
バックエンドアプリケーションと配信基盤で取り組んでいることを紹介します。
- バックエンドアプリケーション
MirrativのバックエンドではPerlとGoの2つの言語を使って運用しており、昨今はGoアプリケーションへ移行を進めています。Perlで書かれたアプリケーションは仕組みそのものが古くなりがちで、Deployフローが古くどうしても時間が掛かってしまっています。
そこで、Deployの高速化とアプリケーション構成のモダナイズ化をしています。
- 配信基盤
配信基盤は過去に外部製品を用いて構成していたのですが、現在では全て内製化しています。
これによって、Mirrativ上の映像/音声は全て配信基盤上に流れるようになっているため、映像/音声を用いた機能拡張が行いやすくなりました。最近では配信文字起こし機能をGPUマシンを用意して実装することができ、低コストでありながらチューニングしやすくリリースできています。
今後も映像/音声に特化したさまざまな機能拡張を行っていく予定です。
◆執筆:漢 祐介 株式会社ミラティブ/技術戦略本部/基盤開発部/インフラストリーミングマネージャー @octu0
【公式ストアページ】
iOS
Android
アーキテクチャを構成するツール
会社情報
株式会社ミラティブ
Mirrativは、スマホ1つで誰でも簡単にゲーム配信ができる、スマホ画面共有型ゲーム配信プラットフォームです。子どものころ、友だちの家に集まってテレビを囲んでゲームを楽しんだような世界観をプラットフォーム内で再現しています。 スマホ1台で誰でも簡単にゲーム配信ができる手軽さが好評を博し、500万人以上の配信者を有する日本最大のスマホゲーム配信プラットフォームに成長しています。また、アクティブなユーザーに占める配信者の比率が約30%と、非常に高い水準でユーザー同士がお互いの配信を行き来する双方向性の高いコミュニティが形成されています。