Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
Search
yakenji
July 14, 2025
Programming
2.7k
1
Share
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
2025/07/11のSRE NEXT 2025 当日の登壇資料です。
yakenji
July 14, 2025
Other Decks in Programming
See All in Programming
実践CRDT
tamadeveloper
0
410
AIエージェントで業務改善してみた
taku271
0
500
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
360
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
2
260
How Swift's Type System Guides AI Agents
koher
0
190
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
750
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
200
Coding as Prompting Since 2025
ragingwind
0
770
Java 21/25 Virtual Threads 소개
debop
0
340
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
330
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
180
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
Featured
See All Featured
Mind Mapping
helmedeiros
PRO
1
150
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.8k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Six Lessons from altMBA
skipperchong
29
4.2k
Code Reviewing Like a Champion
maltzj
528
40k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
330
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.5k
Unsuck your backbone
ammeep
672
58k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
220
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
790
Transcript
1 複雑なシステムにおける User Journey SLOの導入 土屋健司
2 ・SIerで大規模システムの性能問題を多数解決 ・2024年メルカリ入社 ・Platform SRE ・新規サービスの立ち上げ支援
・メルカリのモニタリング ・最近Platform Networkに異動 土屋健司 @yakenji
3 2013年2月1日 会社設立日 東京、福岡、大阪 Palo Alto、Bangalore オフィス 2,190名(連結) 従業員数
3 株式会社メルカリ 概要
4 •サービス開始:2013年7月 •対応OS:Android、iOS ※Webブラウザからも利用可能 •利用料:無料 ※売れたときの手数料:販売価格の10% •対応地域・言語:日本・日本語基本仕様 •累計出品数:40億品を突破 (2024年9月)
でなくなったモノが必要とする人に渡る喜びを感じ、また購入 者は豊富な出品数から「宝探し」感覚で魅力的な商品を見つけ ることを楽しんでいます。 さらに「メルカリ」は物の売買だけではなく出品者と購入者の コミュニケーションも重視し、チャットや絵文字、「いい ね!」機能の拡充などお客さまがより快適に取引を楽しめるた めの機能改善にも取り組んでいます。 「メルカリ」は、個人間での不要品の売買を簡単に行えるフリ マアプリです。エスクロー決済を活用した安心・安全な取引環 境の整備や、簡単かつ手頃な価格の配送オプションなど差別化 されたユニークなお客さま体験を提供しています。 現在、「メルカリ」では1秒間に7.9個の商品が売れています。 売れやすい環境が整う中、多くの出品者は、自分にとって必要 4 メルカリとは
5 5 CtoCの基盤を活用した事業成長
6 User Journey SLOとは?
7 User Journey SLO = お客さま目線の SLO
8 従来のSLOとの違い 開発目線の SLO 単一のサービスに閉じた目標・監視 サービスにフォーカス User Journey SLO 複数のサービスに跨った目標・監視
お客さまにフォーカス
9 User Journey SLOの背景と動機
10 メルカリでは各サービスチームが障害対応を実施 ・各チームがそれぞれ ・SLO設定 ・モニタリング ・オンコール対応
11 SREはインシデント対応の改善と最後の砦の役割 SRE SREはサービス全体の 信頼性向上に注力 最後の砦としてオンコール対応もする
各サービスの障害対応・改善は あくまで各開発チームの責務!
12 各User Journeyは複数のサービスに依存 複数の - エンドポイント - サービス
例えば … 発送の場合: - Shipping - Item - User - Transaction
13 一つのサービスの障害の影響範囲はわかりにくい どのAPIがどこで リクエストされるかの 把握は困難 お客さまは何ができなくなった?
= 何ならできる?
14 障害が発生しても重大度が不明 # incident-channel # incident-channel As Is To Be
障害発生時に 影響範囲が 具体的にはわからない さらに … 各サービスのSLOでは お客さま目線の サービスレベルは不明
15 ユーザージャーニー に沿ったSLOが必要!
16 1. SLIの設定 2. Critical User Journey (CUJ)の定義 3. クリティカルな
APIの探索 やったこと
17 1 User Journey, 1 single SLO 1 User Journeyに
サービスの数だけ SLOがあっても 使いこなせない 多少の誤差は許容 あっても1つのSLOに なるように
18 計測可能なメトリクスから SLIを決定 Availability: SCUJ = SA × SB Latency
: ACUJ = min(AA, AB) クリティカルAPI (= 障害発生でUJがAvailableで はなくなるもの) のメトリクスを用いて SLIを定義 トライ&エラーが大事 コード化で後から チューニングできるように クリティカルAPI A・Bの Availability: SA, SB エラー率 Latency : AA, AB 目標応答時間の達成率
19 40のCUJを定義 ・画面操作 + 画面遷移 ・Availableな状態を定義 ・コア機能にフォーカス
例) ・商品検索 ・出品・購入・発送
20 障害注入によりクリティカル APIを探索 各CUJで使用される APIを探索 各APIに障害を
擬似発生させてアプリの挙動 を判定 AvailableではなくなるAPI => クリティカルなAPI
21 既存のテストフレームワークを流用して探索を自動化 アプリは日々変化する → クリティカルAPIも 変化する 探索を自動化して
常に最新の状態を 維持する必要
22 Lookerで結果の可視化 +Terraformでモニタリング反映 クリティカルAPIの 可視化とAPMへの反映も 半自動化 工数を削減しつつ
統一的なモニタリングを 実施
23 障害発生後、即座に影響範囲を特定 影響CUJとともにアラート通知 Slack botで影響範囲を一覧化
24 ダッシュボードから原因サービスに最短でコンタクト ダッシュボードで クリティカルAPIの メトリクスを可視化 ・
障害時の一次ソース ・ SLOが悪化した際の分析 コンタクトポイント情報
25 今後の取り組み
26 自動化を進めたが、テストシナリオのメンテナンスは必要 QAのフレームワーク により小さな変更なら 影響なし 大きな変更には
対応できない (画面ごと置き換わる等)
27 AI Agent等によってテスト保守も自動化を目指す => Cursor / Claud CodeなどLLMにメンテナンスを 実施させる取り組みをトライ中
=> QAサイクルへの組み込みも考えたい
28 まとめ
29 • Critical User Journey SLO を導入して障害対応・サービス品質の 可視化を行った ◦ お客さまが実際に感じる品質を数値化
◦ お客さまが障害時に何ができて何ができないのかを即時把握 ◦ わかりやすいSLIの定義が重要 • アプリの変化に追従して陳腐化しない仕組みの整備を行った ◦ アプリは常にアップデートされるので自動でSLOもアップデート ◦ SLOと現実が乖離すると意味なし!アップデートし続けるのが重要 ◦ これからもメンテナンスとの闘いは続く。。。 まとめ
30 We are hiring!
31 クラウドネットワークエンジニアを探しています! https://apply.workable.com/mercari/j/08F0B7531B/