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. About Me • 杉本 浩平(Kohei SUGIMOTO) • @kohbis • 2022年4月

    株式会社ミクシィ(現・MIXI)入社 ◦ Vantageスタジオ みてねプロダクト開発部 基盤開発グループ SREチーム • 業務では Ruby や Terraform
  2. 家族アルバム みてね 世界中の家族の”こころのインフラ”を作る • 2015年4月リリース • 現在 7言語・175の国と地域でサービスを提 供 •

    海外では FamilyAlbum という名称で展開中 • 2022年8月に利用者数が 1,500万人を突破※1 • 日本国内ではママやパパの半数となる47.1% の方がご利用※2 ※1 iOS・Android™ アプリ登録者数、ブラウザ版登録者数の合計 ※2「みてね」登録時に入力されたお子さまの誕生日と厚生労働省発表「人口動態統計」から算出。2022年8月時点で47.1%
  3. マルチリージョン構成 • 目的は海外ユーザー体験向上 ◦ not BCP 対策 ◦ 近いリージョンにアクセスできる =

    レスポ ンスタイム改善 • 現在は2リージョン構成 ◦ 東京リージョン(ap-northeast-1) ◦ バージニア北部リージョン(us-east-1) • ユーザー体験につながる特定のAPI ◦ 例 ▪ アプリ起動時 ▪ アルバムや写真の閲覧
  4. マルチリージョン構成 - 概要 • API ◦ CloudFront & Route 53

    のレイテンシー ベースルーティング • Database ◦ Aurora Global Database によるレプリケー ション ◦ DynamoDB Global Tables によるレプリ ケーション • Observability ◦ 東京リージョンの Managed Service for Prometheus にメトリクス集約 ◦ New Relic によるリージョン別監視 & 通知
  5. マルチリージョン構成 - API編 CloudFront ビヘイビアでパスパターンごとのルーティング • マルチリージョン対応するAPI ◦ Route 53

    のレイテインシーベースルーティング • 同じパスで GET のみマルチリージョン対応するAPI ◦ Lambda@Edge でリクエストメソッドを判定 ▪ GET or HEAD → レイテインシーベースルーティング ▪ GET / HEAD 以外 → 東京リージョンに固定 • それ以外の API ◦ 東京リージョンに固定
  6. マルチリージョン構成 - Database編 • Aurora Global Database ◦ ストレージレベルの物理レプリケーション ◦

    通常 1 秒未満のレプリケーション ▪ みてねでは 100 ~ 200 ms で推移 • DynamoDB Global Tables ◦ 通常 1 秒以内にすべてのレプリカテーブルに 伝播 • ElastiCache for Memcached ◦ 各リージョンに配置 ◦ 一般的なキャッシュ用途
  7. マルチリージョン構成 - Observability編 • Managed Service for Prometheus にメト リクス集約

    ◦ region ラベルを付与してリージョンごとに集計 • New Relic の活用 ◦ Prometheus の重要なメトリクスは New Relic にも送 信 ◦ リージョンごとに監視、アラート ◦ New Relic Mobile で国別にレスポンスタイム等を分析 • Grafana ダッシュボードを日次モニタリング
  8. まとめ • 『家族アルバム みてね』の ユーザー体験向上 のためにマルチリージョン化 ◦ API は CloudFront

    と Route 53 でレイテンシーベースのルーティング ◦ Database は Aurora Global Database と DynamoDB Global Tables によるレプリケーション ◦ Observability は メトリクスを Managed Service for Prometheus に集約 & New Relic 活用 • それぞれの取り組みはブログなどでも発信しているので、ぜひご覧ください。 • A1-03 ブースにて出展しているので、お時間あればお越しください。