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
CPDD
Search
JBD
October 02, 2018
Technology
0
4.1k
CPDD
JBD
October 02, 2018
Tweet
Share
More Decks by JBD
See All by JBD
eBPF in Microservices Observability at eBPF Day
rakyll
1
2.1k
eBPF in Microservices Observability
rakyll
1
1.7k
OpenTelemetry at AWS
rakyll
1
1.8k
Debugging Code Generation in Go
rakyll
5
1.5k
Are you ready for production?
rakyll
8
2.7k
Servers are doomed to fail
rakyll
3
1.5k
Serverless Containers
rakyll
1
240
Critical Path Analysis
rakyll
0
530
Monitoring and Debugging Containers
rakyll
2
1.1k
Other Decks in Technology
See All in Technology
ずっと昔に Star をつけたはずの思い出せない GitHub リポジトリを見つけたい!
rokuosan
0
150
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
150
2024年にチャレンジしたことを振り返るぞ
mitchan
0
130
5分でわかるDuckDB
chanyou0311
10
3.2k
Wvlet: A New Flow-Style Query Language For Functional Data Modeling and Interactive Data Analysis - Trino Summit 2024
xerial
1
110
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
530
アップデート紹介:AWS Data Transfer Terminal
stknohg
PRO
0
180
継続的にアウトカムを生み出し ビジネスにつなげる、 戦略と運営に対するタイミーのQUEST(探求)
zigorou
0
520
kargoの魅力について伝える
magisystem0408
0
200
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
200
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
670
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
160
Featured
See All Featured
Being A Developer After 40
akosma
87
590k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Embracing the Ebb and Flow
colly
84
4.5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
GitHub's CSS Performance
jonrohan
1030
460k
Statistics for Hackers
jakevdp
796
220k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Speed Design
sergeychernyshev
25
670
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Transcript
None
None
None
systems? who does that?
jaana b. dogan 6+ years at Google, touched many projects
early days (of a company)
None
growing...
what growth looks like service A service B service C
service D service E service auth email
one becomes many failure in isolation who to ping in
failure?
and it goes larger...
good guy jeff
None
None
code search
go_library( name = "logs", srcs = ["logs.go"], visibility = ["//visibility:public"],
deps = [ …. ], ) References (641 occurrences) - //source/ads/monitoring/BUILD - //source/ads/analysis/BUILD - //source/ads/mobile/BUILD ...
frontend server authentication users images memcache blobservice memcache memcache (metadata)
(disks) load balancer
frontend server authentication users images memcache blobservice memcache memcache (metadata)
(disks) load balancer critical path
cpdd (critical path driven development)
discover the critical paths make them reliable and fast make
them debuggable
how do we get there? events or tracing
why? why? why? why? why?
GET /timeline edge-lb sched api-server auth.Auth cache.Get mysql.Query user.Profile cache.Get
mysql.Query images.Filter blobstore.Get
bare metal kernel process scheduler network stack cloud stack user
process frameworks your code
GET /timeline edge-lb sched api-server auth.Auth cache.Get mysql.Query user.Profile cache.Get
mysql.Query images.Filter blobstore.Get not my fault
GET /timeline auth.Auth cache.Get mysql.Query user.Profile cache.Get mysql.Query images.Filter blobstore.Get
cache.Get mysql.Query blob.Get where is the source code?
GET /timeline auth.Auth cache.Get mysql.Query user.Profile cache.Get mysql.Query images.Filter blobstore.Get
cache.Get mysql.Query blob.Get who to call?
GET /timeline auth.Auth cache.Get mysql.Query user.Profile cache.Get mysql.Query images.Filter blobstore.Get
cache.Get mysql.Query blob.Get give me the logs, runtime events, profiles...
challenges...
this is an organizational problem CPDD CHALLENGE #1:
github.com/w3c/distributed-tracing
engineers don’t know where to start CPDD CHALLENGE #2:
infra is still a blackbox CPDD CHALLENGE #3:
instrumentation is expensive CPDD CHALLENGE #4:
dynamic capabilities are underestimated CPDD CHALLENGE #5:
None
cpdd: a tool to close knowledge gaps (which we don’t
talk about)
fin
[email protected]