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
Profiling 101: o que é e como fazer - PHPConfer...
Search
Diana Arnos
December 07, 2019
Programming
420
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Profiling 101: o que é e como fazer - PHPConference 2019
Uma introdução ao profiling e sua execução com xdebug e blackfire.io
Diana Arnos
December 07, 2019
More Decks by Diana Arnos
See All by Diana Arnos
PHP Além do Síncrono
dianaarnos
1
550
O Mundo Mágico dos Profilers
dianaarnos
0
170
Trabalhar na gringa - Como chegar lá?
dianaarnos
0
400
PCS2020 - PHP Além do Síncrono
dianaarnos
2
1.1k
VDPWeekend - Emprego dos Sonhos - O que esperam de você e como ser cada vez melhor
dianaarnos
1
230
PHPPR Live 2020 - PHP Paralelo e Distribuído
dianaarnos
0
190
PHP e Segurança: é possível - PHPConference BR 2019
dianaarnos
0
600
PHP, Symfony and Security
dianaarnos
0
830
Back End Performático - CPGoiás 2019
dianaarnos
0
130
Other Decks in Programming
See All in Programming
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
19k
typoなんかねぇよ
raspython3
0
480
My Marp Sample
sinoue0108
0
110
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
1
890
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
370
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
170
Loosening the Reins: Go Generics Get More Flexible
kuro_kurorrr
0
300
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
160
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
450
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
140
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
240
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4.1k
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.5k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
870
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Skip the Path - Find Your Career Trail
mkilby
1
190
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
New Earth Scene 8
popppiees
3
2.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
440
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
580
Transcript
PROFILING 101 O que é e como fazer?
@dianaarnos Dev, Sec, Music, Kung Fu. Engenheira de Software @
Blackfire.io Arquiteta e Desenvolvedora @ MT4 Evangelista @ PHPSP Evangelista @ PHPWomenBR
ERA UMA VEZ UMA APLICAÇÃO...
None
None
NA SEMANA SEGUINTE...
None
None
None
VOCÊ FAZ DEPLOY?
None
NÃO.
E QUANDO A PERFORMANCE É MENOR?
PERFORMANCE RUIM = - DINHEIROS
RUIM PARA O NEGÓCIO = DISFUNÇÃO
DISFUNÇÃO = BUG
None
PERFORMANCE = FEATURE
https://edge.akamai.com/ec/us/highlights/keynote-speakers.jsp#edge2016futureofcommercemodal ALIEXPRESS -36% LOAD TIME = +10,5% DE PEDIDOS
PERFORMANCE NO CICLO DE VIDA DE DESENVOLVIMENTO
COMO MEDIR?
PROFILING.
PROFILING. PROFILING?
ANÁLISE DINÂMICA
ANÁLISE DINÂMICA MEDIÇÕES (MEMÓRIA, TEMPO, CHAMADAS)
ANÁLISE DINÂMICA MEDIÇÕES (MEMÓRIA, TEMPO, CHAMADAS) OTIMIZAÇÃO
EXISTEM ALGUMAS FERRAMENTAS
None
PROFILER EMBUTIDO
#php.ini xdebug.profiler_enable = 1 xdebug.profiler_output_dir = /caminho/diretório
cachegrind.out.{hash/PID}
KCACHEGRIND
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
ON-DEMAND
ON-DEMAND TODOS OS AMBIENTES
ON-DEMAND TODOS OS AMBIENTES SEM OVERHEAD EM NON-PROFILING REQUESTS
BUILDS
None
None
None
None
None
None
REFERÊNCIAS http://bit.ly/diana-ref2
SLIDES http://bit.ly/diana-slides2
OBRIGADA! Fale comigo: @dianaarnos