Upgrade to Pro — share decks privately, control downloads, hide ads and more …

『家族アルバム みてね』のグローバル展開を支えるAWS活用 / AWS Summit Tokyo 2023 FamilyAlbum Multi-Region

kohbis
April 24, 2023

『家族アルバム みてね』のグローバル展開を支えるAWS活用 / AWS Summit Tokyo 2023 FamilyAlbum Multi-Region

AWS Summit Tokyo 2023(2023 年 4 月 20 日、21 日 | 幕張メッセ)
EXPO ミニステージでお話しした資料です
https://aws.amazon.com/jp/summits/tokyo/expo/

kohbis

April 24, 2023
Tweet

More Decks by kohbis

Other Decks in Technology

Transcript

  1. 『家族アルバム みてね』の
    グローバル展開を支える
    AWS活用
    株式会社MIXI
    Vantageスタジオ みてねプロダクト開発部
    基盤開発グループ SREチーム
    杉本 浩平

    View full-size slide

  2. About Me
    ● 杉本 浩平(Kohei SUGIMOTO)
    ● @kohbis
    ● 2022年4月 株式会社ミクシィ(現・MIXI)入社
    ○ Vantageスタジオ みてねプロダクト開発部 基盤開発グループ SREチーム
    ● 業務では Ruby や Terraform

    View full-size slide

  3. Agenda
    1. 『家族アルバム みてね』のご紹介
    2. 『家族アルバム みてね』が活用するAWSサービス
    3. 『家族アルバム みてね』のAWSマルチリージョン構成
    a. API 編
    b. Database 編
    c. Observability 編
    4. まとめ

    View full-size slide

  4. Agenda
    1. 『家族アルバム みてね』のご紹介
    2. 『家族アルバム みてね』が活用するAWSサービス
    3. 『家族アルバム みてね』のAWSマルチリージョン構成
    a. API 編
    b. Database 編
    c. Observability 編
    4. まとめ

    View full-size slide

  5. 『家族アルバム みてね』のご紹介

    View full-size slide

  6. 子どもの写真・動画を家族で共有し、
    コミュニケーションして楽しむサービス

    View full-size slide

  7. 子どもの写真・動画を、無料・無制限に

    共有できるスマートフォンアプリです


    View full-size slide

  8. 家族アルバム みてね
    世界中の家族の”こころのインフラ”を作る
    ● 2015年4月リリース
    ● 現在 7言語・175の国と地域でサービスを提

    ● 海外では FamilyAlbum という名称で展開中
    ● 2022年8月に利用者数が 1,500万人を突破※1
    ● 日本国内ではママやパパの半数となる47.1%
    の方がご利用※2
    ※1 iOS・Android™ アプリ登録者数、ブラウザ版登録者数の合計
    ※2「みてね」登録時に入力されたお子さまの誕生日と厚生労働省発表「人口動態統計」から算出。2022年8月時点で47.1%

    View full-size slide

  9. Agenda
    1. 『家族アルバム みてね』のご紹介
    2. 『家族アルバム みてね』が活用するAWSサービス
    3. 『家族アルバム みてね』のAWSマルチリージョン構成
    a. API 編
    b. Database 編
    c. Observability 編
    4. まとめ

    View full-size slide

  10. 『家族アルバム みてね』が活用する
    AWSサービス

    View full-size slide

  11. 『家族アルバム みてね』が活用するAWSサービス

    View full-size slide

  12. Agenda
    1. 『家族アルバム みてね』のご紹介
    2. 『家族アルバム みてね』が活用するAWSサービス
    3. 『家族アルバム みてね』のAWSマルチリージョン構成
    a. API 編
    b. Database 編
    c. Observability 編
    4. まとめ

    View full-size slide

  13. 『家族アルバム みてね』の
    AWSマルチリージョン構成

    View full-size slide

  14. マルチリージョン構成
    ● 目的は海外ユーザー体験向上
    ○ not BCP 対策
    ○ 近いリージョンにアクセスできる = レスポ
    ンスタイム改善
    ● 現在は2リージョン構成
    ○ 東京リージョン(ap-northeast-1)
    ○ バージニア北部リージョン(us-east-1)
    ● ユーザー体験につながる特定のAPI
    ○ 例
    ■ アプリ起動時
    ■ アルバムや写真の閲覧

    View full-size slide

  15. マルチリージョン構成 - 概要
    ● API
    ○ CloudFront & Route 53 のレイテンシー
    ベースルーティング
    ● Database
    ○ Aurora Global Database によるレプリケー
    ション
    ○ DynamoDB Global Tables によるレプリ
    ケーション
    ● Observability
    ○ 東京リージョンの Managed Service for
    Prometheus にメトリクス集約
    ○ New Relic によるリージョン別監視 & 通知

    View full-size slide

  16. マルチリージョン構成 - API編
    CloudFront ビヘイビアでパスパターンごとのルーティング
    ● マルチリージョン対応するAPI
    ○ Route 53 のレイテインシーベースルーティング
    ● 同じパスで GET のみマルチリージョン対応するAPI
    ○ Lambda@Edge でリクエストメソッドを判定
    ■ GET or HEAD → レイテインシーベースルーティング
    ■ GET / HEAD 以外 → 東京リージョンに固定
    ● それ以外の API
    ○ 東京リージョンに固定

    View full-size slide

  17. マルチリージョン構成 - API編
    マルチリージョン対応するAPI GET のみマルチリージョン対応するAPI

    View full-size slide

  18. マルチリージョン構成 - Database編
    ● Aurora Global Database
    ○ ストレージレベルの物理レプリケーション
    ○ 通常 1 秒未満のレプリケーション
    ■ みてねでは 100 ~ 200 ms で推移
    ● DynamoDB Global Tables
    ○ 通常 1 秒以内にすべてのレプリカテーブルに
    伝播
    ● ElastiCache for Memcached
    ○ 各リージョンに配置
    ○ 一般的なキャッシュ用途

    View full-size slide

  19. マルチリージョン構成 - Observability編
    ● Managed Service for Prometheus にメト
    リクス集約
    ○ region ラベルを付与してリージョンごとに集計
    ● New Relic の活用
    ○ Prometheus の重要なメトリクスは New Relic にも送

    ○ リージョンごとに監視、アラート
    ○ New Relic Mobile で国別にレスポンスタイム等を分析
    ● Grafana ダッシュボードを日次モニタリング

    View full-size slide

  20. Agenda
    1. 『家族アルバム みてね』のご紹介
    2. 『家族アルバム みてね』が活用するAWSサービス
    3. 『家族アルバム みてね』のAWSマルチリージョン構成
    a. API 編
    b. Database 編
    c. Observability 編
    4. まとめ

    View full-size slide

  21. まとめ
    ● 『家族アルバム みてね』の ユーザー体験向上 のためにマルチリージョン化
    ○ API は CloudFront と Route 53 でレイテンシーベースのルーティング
    ○ Database は Aurora Global Database と DynamoDB Global Tables によるレプリケーション
    ○ Observability は メトリクスを Managed Service for Prometheus に集約 & New Relic 活用
    ● それぞれの取り組みはブログなどでも発信しているので、ぜひご覧ください。
    ● A1-03 ブースにて出展しているので、お時間あればお越しください。

    View full-size slide