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
A/B Testing with Metriks
Search
Larry Marburger
October 01, 2012
Programming
1
110
A/B Testing with Metriks
Quick lightning talk about using metriks to run a dead simple performance A/B test.
Larry Marburger
October 01, 2012
Tweet
Share
More Decks by Larry Marburger
See All by Larry Marburger
I Am Hypermedia (And So Can You)
lmarburger
3
190
Other Decks in Programming
See All in Programming
RDoc meets YARD
okuramasafumi
4
160
DockerからECSへ 〜 AWSの海に出る前に知っておきたいこと 〜
ota1022
5
1.9k
KessokuでDIでもgoroutineを活用する / Go Connect #6
mazrean
0
140
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
240
フロントエンドのmonorepo化と責務分離のリアーキテクト
kajitack
2
160
Laravel Boost 超入門
fire_arlo
2
180
Langfuseと歩む生成AI活用推進
licux
3
320
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
210
開発チーム・開発組織の設計改善スキルの向上
masuda220
PRO
18
9.7k
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
0
240
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
150
Kiroで始めるAI-DLC
kaonash
2
510
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
910
Side Projects
sachag
455
43k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
11
1.1k
Balancing Empowerment & Direction
lara
3
610
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
A better future with KSS
kneath
239
17k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
A designer walks into a library…
pauljervisheath
207
24k
Transcript
Story Time Monday, October 1, 12
Story Time Monday, October 1, 12
Lazy Metrics <script>var start = new Date();</script> <img src="<%= content_url
%>"> <script> $('img').load(function() { recordMetric("image-load", new Date() - start); }); </script> Monday, October 1, 12
Lazy Metrics <script>var start = new Date();</script> <img src="<%= content_url
%>"> <script> $('img').load(function() { recordMetric("image-load", new Date() - start); }); </script> Monday, October 1, 12
Lazy Metrics <script>var start = new Date();</script> <img src="<%= content_url
%>"> <script> $('img').load(function() { recordMetric("image-load", new Date() - start); }); </script> Monday, October 1, 12
Server # /metrics?name=image-load&value=123.45 get '/metrics' do name = params['name'] value
= params['value'] Metriks.timer(name).update(value) content_type 'text/javascript' status 200 end Monday, October 1, 12
Server # /metrics?name=image-load&value=123.45 get '/metrics' do name = params['name'] value
= params['value'] Metriks.timer(name).update(value) content_type 'text/javascript' status 200 end Monday, October 1, 12
Server # /metrics?name=image-load&value=123.45 get '/metrics' do name = params['name'] value
= params['value'] Metriks.timer(name).update(value) content_type 'text/javascript' status 200 end Monday, October 1, 12
Client Side Monday, October 1, 12
Story Time Monday, October 1, 12
Story Time Monday, October 1, 12
Lazy A/B Test <% if fast = [true, false].sample %>
<img src="<%= fast_content_url %>"> <% else %> <img src="<%= content_url %>"> <% end %> Monday, October 1, 12
Lazy A/B Test <script> $('img').load(function() { name = "image-load<%= fast
? '-test' : '' %>" recordMetric(name, new Date() - start); }); </script> Monday, October 1, 12
Lazy A/B Test <script> $('img').load(function() { name = "image-load<%= fast
? '-test' : '' %>" recordMetric(name, new Date() - start); }); </script> Monday, October 1, 12
Lazy A/B Test 10.5s 6.6s Monday, October 1, 12
New Relic 37ms Monday, October 1, 12
metriks 14ms 110ms Monday, October 1, 12
gem install metriks Thank me later. Monday, October 1, 12