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
1
390
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
Tweet
Share
More Decks by Diana Arnos
See All by Diana Arnos
PHP Além do Síncrono
dianaarnos
1
520
O Mundo Mágico dos Profilers
dianaarnos
0
150
Trabalhar na gringa - Como chegar lá?
dianaarnos
0
350
PCS2020 - PHP Além do Síncrono
dianaarnos
2
1k
VDPWeekend - Emprego dos Sonhos - O que esperam de você e como ser cada vez melhor
dianaarnos
1
180
PHPPR Live 2020 - PHP Paralelo e Distribuído
dianaarnos
0
150
PHP e Segurança: é possível - PHPConference BR 2019
dianaarnos
0
560
PHP, Symfony and Security
dianaarnos
0
790
Back End Performático - CPGoiás 2019
dianaarnos
0
110
Other Decks in Programming
See All in Programming
One Enishi After Another
snoozer05
PRO
0
160
contribution to astral-sh/uv
shunsock
0
540
React Nativeならぬ"Vue Native"が実現するかも?_新世代マルチプラットフォーム開発フレームワークのLynxとLynxのVue.js対応を追ってみよう_Vue Lynx
yut0naga1_fa
2
1.5k
CSC305 Lecture 09
javiergs
PRO
0
310
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
100
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
450
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
120
その面倒な作業、「Dart」にやらせませんか? Flutter開発者のための業務効率化
yordgenome03
1
140
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
320
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
250
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
270
Software Architecture
hschwentner
6
2.3k
Featured
See All Featured
Faster Mobile Websites
deanohume
310
31k
Code Reviewing Like a Champion
maltzj
526
40k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
How to train your dragon (web standard)
notwaldorf
97
6.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
130k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
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