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

大量配信システムにおけるSLOの実践:「見えない」信頼性をSLOで可視化

 大量配信システムにおけるSLOの実践:「見えない」信頼性をSLOで可視化

SRE NEXT 2025( https://sre-next.dev/2025/ )講演資料

7/12 14:10 - 14:20
https://sre-next.dev/2025/schedule/#slot084

Avatar for PLAID Tech

PLAID Tech

July 11, 2025
Tweet

More Decks by PLAID Tech

Other Decks in Technology

Transcript

  1. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. • 2020~2023 Unipos株式会社 • バックエンドエンジニア

    • SRE • テックリード • 2023~ 株式会社プレイド • KARTE Message テックリード 2 ⾃⼰紹介 Yugo Tsuchiya ⼟⾕ 優五 Github : @gal1996 X: @prooooograming 2025.07.12  |  SRE Next  | 
  2. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 配信の最小単位 7 KARTE Messageにおける配信の単位 •

    キャンペーン ◦ 配信の単位。誰に‧何を‧いつ配信するのかを設定する ◦ 1キャンペーンの配信で⼤量の配信対象へ配信がされる
  3. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 8 配信処理の流れ 配信準備 Cloud Spanner

    BigQuery Kubernetes Engine 送信処理 Kubernetes Engine Cloud Spanner 配信完了 エンドユーザー メール送信処理 SES プッシュ通知、LINE メール
  4. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 9 配信処理の流れ 配信準備 Cloud Spanner

    BigQuery Kubernetes Engine 送信処理 Kubernetes Engine Cloud Spanner 配信完了 エンドユーザー メール送信処理 SES プッシュ通知、LINE メール
  5. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 10 配信準備 配信対象の決定 client-data BigQuery

    user_id email name 000001 [email protected] Tony 000002 [email protected] Nick … … 005000 [email protected] Peter … … 100000 [email protected] Steve 配信対象リスト user_id email 000001 [email protected] … … 100000 [email protected] user_id name 000001 Tony … … 100000 Steve 配信リスト 配信対象 決定クエリ
  6. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 11 配信準備 配信対象のキューイング client-data BigQuery

    配信データ Cloud Spanner 000001 [email protected] … … 000500 [email protected] 099500 [email protected] … … 100000 [email protected] … 配信対象リスト 配信queue user_id email name 000001 [email protected] Tony 000002 [email protected] Nick … … 005000 [email protected] Peter … … 100000 [email protected] Steve
  7. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 12 配信処理の流れ 配信準備 Cloud Spanner

    BigQuery Kubernetes Engine 送信処理 Kubernetes Engine Cloud Spanner 配信完了 エンドユーザー メール送信処理 SES プッシュ通知、LINE メール
  8. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 14 配信処理の流れ 配信準備 Cloud Spanner

    BigQuery Kubernetes Engine 送信処理 Kubernetes Engine Cloud Spanner 配信完了 エンドユーザー メール送信処理 SES プッシュ通知、LINE メール
  9. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 16 配信システムを 俯瞰して見る 配信準備 送信処理

    配信完了 エンドユーザー メール送信処理 プッシュ通知、LINE メール Name Compute Engine キャンペーン Name Compute Engine キャンペーン Name Compute Engine キャンペーン
  10. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. クライアントの期待 18 クライアントのKARTE Messageに対する期待 •

    想定したタイミングで配信が 開始‧完了する • ⾼い確率でメッセージが届く • 意図した対象に意図した 内容が届く • etc
  11. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 20 各STEPでのSLO 送信処理 配信完了 エンドユーザー

    メール送信処理 プッシュ通知、LINE メール 各STEPごとにSLOを設定 配信準備 配信準備の 成功率 送信処理の 成功率 配信時間の 達成率
  12. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 21 送信処理STEP SLO 送信処理 配信完了

    エンドユーザー メール送信処理 プッシュ通知、LINE メール 各STEPごとにSLOを設定 配信準備 配信準備の 成功率 送信処理の 成功率 配信時間の 達成率
  13. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 22 配信データ Cloud Spanner 配信基盤

    Kubernetes Engine … MessagingService 000001 [email protected] … … 000500 [email protected] 099500 [email protected] … … 100000 [email protected] … 99.5%以上がリクエスト成功 でキャンペーン成功 送信処理STEP SLO
  14. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 23 送信処理STEP SLO 送信処理 配信完了

    エンドユーザー メール送信処理 プッシュ通知、LINE メール Name Compute Engine キャンペーン Name Compute Engine キャンペーン SLO: 99.9% 配信準備 配信準備の 成功率
  15. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 24 メール送信処理 SLO 送信処理 配信完了

    エンドユーザー メール送信処理 プッシュ通知、LINE メール 各STEPごとにSLOを設定 配信準備 配信準備の 成功率 送信処理の 成功率 配信時間の 達成率
  16. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 26 送信処理 配信完了 エンドユーザー プッシュ通知、LINE

    メール 送信処理の 成功率 配信準備 配信準備の 成功率 メール送信処理 Name Compute Engine キャンペーン SLO: 98.0% メール送信処理 SLO
  17. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 27 ダッシュボードでの可 視化 様々な指標を可視化 •

    SLI/SLO • 配信ボリュームごとのエラー率 • 配信チャンネルごとのエラー内訳 • キャンペーン単位での成功‧失敗 • etc
  18. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 30 • 成功率の⼊れ⼦ ◦ 99.5%以上の送信対象への送信成功でキャンペーンが成功

    ◦ SLOとしては成功したキャンペーンが99.9%以上 • 各STEPのSLOがブリーチした時の影響が不透明 ◦ 配信準備が失敗したらエンドユーザーにはどういう影響が出 る? ◦ 送信時間が遅延するとエンドユーザーにはどういう影響が出 る? • etc… 運⽤の課題
  19. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 32 ビジネス向けの SLO 送信処理 配信完了

    エンドユーザー メール送信処理 プッシュ通知、LINE メール 配信準備 配信準備の 成功率 送信処理の 成功率 配信時間の 達成率
  20. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 33 送信処理 配信完了 エンドユーザー メール送信処理

    プッシュ通知、LINE メール 配信準備 • エンドユーザーに配信が届いたか • 配信が遅延していないか 配信時間の 達成率 ビジネス向けの SLO
  21. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 34 配信処理の流れ 送信処理 配信完了 エンドユーザー

    メール送信処理 プッシュ通知、LINE メール 配信準備 信頼性を⾃分たちで管理できる 信頼性を管理しきれない部分がある ex) IP/ドメインレピュテーション,etc ビジネス向けの SLO
  22. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 35 配信処理の流れ 送信処理 配信完了 エンドユーザー

    メール送信処理 プッシュ通知、LINE メール 配信準備 • エンドユーザーに配信が届いたか • 配信が遅延していないか 配信時間の 達成率 ビジネス向けの SLO
  23. 2025.07.12  |  SRE NEXT  |    |  © PLAID Inc. 36 今後の展望 • エラーバジェットの有効な活⽤ •

    より納得感の持てるSLOの閾値 • 配信システム以外のSLO • etc 今後の展望