Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
大規模UnityゲームタイトルでのObservabilityへの取り組み事例
Search
WonderPlanet Inc.
June 13, 2023
Programming
480
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
大規模UnityゲームタイトルでのObservabilityへの取り組み事例
WonderPlanet Inc.
June 13, 2023
More Decks by WonderPlanet Inc.
See All by WonderPlanet Inc.
CEDEC2022_グローバルモバイルゲームのためのパフォーマンス最適化にチームで向き合う方法/cedec-2022-performance-optimization
wonderplanet
0
270
プロダクションコードの設計とテスト駆動開発入門
wonderplanet
0
1.5k
Other Decks in Programming
See All in Programming
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
320
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
1.5k
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
140
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
140
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
220
アクセシビリティから考える情報設計
high_g_engineer
0
420
海上で動くGoサーバー: goroutineとchannelでさばく航行データストリーム
atsuki_seo
0
980
大喜利で理解するLLM as a Judge / Understanding LLM-as-a-Judge through Ogiri
rockname
0
170
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
360
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
460
Intent as Code
shoppingjaws
6
1.1k
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2.3k
Featured
See All Featured
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
550
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.1k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
850
Building an army of robots
kneath
307
47k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
250
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
440
Code Reviewing Like a Champion
maltzj
528
40k
BBQ
matthewcrist
89
10k
Leo the Paperboy
mayatellez
10
2.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
440
Transcript
大規模Unityゲームタイトルでの Observabilityへの取り組み事例 NRUG メディア&エンターテイメント支部Vol.1LT#1 ワンダープラネット株式会社 CTO 吉谷幹人
© WonderPlanet Inc. 2 自己紹介 吉谷幹人(ヨシヤミキト) ワンダープラネット株式会社 CTO @mikito0521 テックリードとして複数プロジェクトのシステムアーキテクチャや、
技術課題マネジメント、組織運営を主導。その後、全社横断組織 EDMO(エドモ)のエンジニアリング担当かつCTOとして、社内の技 術課題管理や基盤整備、社内標準化などに従事。 主な著書 • Unity2021 3D/2Dゲーム開発実践入門 • Unityゲーム プログラミング・バイブル(共著)
© WonderPlanet Inc. 私たちの使命は、世界中の一人でも多くの人々の日常に、家族や友達と「楽しい ね!」と笑いあえるひとときを届けることです。 国・言語・文化・年齢・性別などあらゆる壁を越えて誰もが楽しめるプロダクト・ サービスを創り、コミュニケーションを通じた「笑顔」を世界の隅々まで広げてい きます。 ワンダープラネットのミッション 3
© WonderPlanet Inc. 4 主要タイトル 企画・開発・運営、海外展開まで、一気通貫で手がける 2022年7月リリース 長期運営タイトル
5 モバイルゲーム開発事情とツラミ
© WonderPlanet Inc. 6 半端ないリクエスト数 • 数千〜万単位の秒間リクエスト数 • リリース、イベントピーク •
どこまで来るか予測しにくい サービス ローンチ
© WonderPlanet Inc. 7 面白さの追求 • 合理性からはみ出るロジック • 特定のコラボイベントだけの処理、機構 •
エモい表現 • 仕様通りの実装完了は完了じゃない • +楽しいが必要、答えがない • 運用での機能追加〜長期運営 • 1〜2週間おきのアップデート • 計画外の追加コンテンツの急遽配信 • データの蓄積・肥大化
© WonderPlanet Inc. 8 世界中のモバイル端末で動作させる • ゲームは実行負荷がべらぼうに高い... • 60FSPアクション性高いバトル画面 •
もりもりの演出、画面エフェクトのレンダリング • 数百MB〜数GBのアセット • さまざまな端末での動作保証 • Android端末数5000+ • 世界中のネットワーク環境
© WonderPlanet Inc. 9 昨今のゲーム開発 とにかく読めない、見えない、 不確実なこと が多い、多すぎる... それでも、ビジネス要求には答えていく必要がある •
パフォーマンスの最適化・コスト最適化 • 障害・エラーの抑制、機敏な対応・復旧
© WonderPlanet Inc. 10 インフラからモバイルアプリまで観測可能に インフラ・ネットワーク 監視 サーバーアプリ 監視 モバイルアプリ
監視 顧客体験 監視 オブザーバビリティ データをリアルタイムに 取得し続け、常にシステム全容 把握と問題の予防・ 改善ができる状態
11 ワンプラでの活用と取りくみ
© WonderPlanet Inc. 12 APM (Application Performance Monitoring)の活用 • 負荷試験中のチューニング/ボトルネックのドリルダウン
• 非効率クエリ • アプリロジックの重い処理(繰り返し処理とか) • キャッシュ利用方法 • 運用中の問題への対応 • Transaction重い順
© WonderPlanet Inc. 13 ダッシュボード&アラート • 目的に応じてダッシュボードを作成 • 機能を超えて、時間範囲が連動するのも◯ •
アラートを設定し、Slackに通知
© WonderPlanet Inc. 自社開発 14 モバイルモニタリング向けUnityラッパーを開発 • Android、iOSのSDK • 端末・OS情報、通信時間、クラッシュなど基本情報が取れる
• Unity自作ラッパーを開発 • Unityプロジェクトコードと連携して独自メトリクスも観測できるように New Relic Android SDK New Relic iOS SDK Unityラッパー 標準メトリクスの取得 独自メトリクスの取得
© WonderPlanet Inc. 15 New Relic Mobile SDK Unityラッパー/Observability Kit
© WonderPlanet Inc. 16 モバイルクライアントサイドの計測指標の設計
© WonderPlanet Inc. 17 モバイルモニタリングダッシュボード(一部)
© WonderPlanet Inc. 18 モバイルモニタリングの効果や所感 • Unityライブラリの開発はそこまで難しくはなかった • NativeのSDK導入だけでも結構計測ができる •
指標やダッシュボードを作るのが結構むずい • 以下のようなところは検知できた • 急に増えたクラッシュ=>対応 • 異常にレスポンスが悪いAPI=>対応 • 本格的な活用はこれからというところ
© WonderPlanet Inc. 19 開発→運用 • 開発中盤からモバイルモニタリングSDKの導入を行う • 問題を生み出さない開発 •
問題に気づく運用 • 問題への機敏な対応 • ユーザー体験を測るSLI/SLOを選定中 • チームで追っていくフロー・文化を確立したい
© WonderPlanet Inc. 20 まとめ • ゲーム開発は不確実性の塊、Observability向上がカギと見る • 予測が難しい中での最適化 •
複雑なドメインコード、膨大な端末、通信環境 • 機敏なビジネス的動きへの対応 • サービスを統合して観測 • APMでのボトルネックのドリルダウン&アクション • Unityのプラグインを作ってモバイルも計測 • SLI/SLOを策定中=>チームで追う文化へ