Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

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

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

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

Slide 5

Slide 5 text

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

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

子どもの写真・動画を、無料・無制限に
 共有できるスマートフォンアプリです


Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

家族アルバム みてね 世界中の家族の”こころのインフラ”を作る ● 2015年4月リリース ● 現在 7言語・175の国と地域でサービスを提 供 ● 海外では FamilyAlbum という名称で展開中 ● 2022年8月に利用者数が 1,500万人を突破※1 ● 日本国内ではママやパパの半数となる47.1% の方がご利用※2 ※1 iOS・Android™ アプリ登録者数、ブラウザ版登録者数の合計 ※2「みてね」登録時に入力されたお子さまの誕生日と厚生労働省発表「人口動態統計」から算出。2022年8月時点で47.1%

Slide 10

Slide 10 text

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

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

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

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

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

Slide 15

Slide 15 text

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

Slide 16

Slide 16 text

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

Slide 17

Slide 17 text

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

Slide 18

Slide 18 text

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

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

マルチリージョン構成 - Observability編 ● Managed Service for Prometheus にメト リクス集約 ○ region ラベルを付与してリージョンごとに集計 ● New Relic の活用 ○ Prometheus の重要なメトリクスは New Relic にも送 信 ○ リージョンごとに監視、アラート ○ New Relic Mobile で国別にレスポンスタイム等を分析 ● Grafana ダッシュボードを日次モニタリング

Slide 21

Slide 21 text

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

Slide 22

Slide 22 text

まとめ

Slide 23

Slide 23 text

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

Slide 24

Slide 24 text

MIXI, Inc.