Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Profilisanje koda sa Xdebug i KCachegrind

6d9ae403ee630c0e51ec79105a3b7af1?s=47 robertbasic
February 21, 2017

Profilisanje koda sa Xdebug i KCachegrind

6d9ae403ee630c0e51ec79105a3b7af1?s=128

robertbasic

February 21, 2017
Tweet

Transcript

  1. Robert Bašić ~ PHPSrbija #20 Profilisanje koda sa Xdebug i

    KCachegrind Robert Bašić https://robertbasic.com/ @robertbasic
  2. Robert Bašić ~ PHPSrbija #20 Performanse su bitne • UX

    - User Experience • Korisnici • Kompanija, brend • Operativni troškovi
  3. Robert Bašić ~ PHPSrbija #20 Šta utiče na brzinu? •

    Hardware servera • Upiti ka bazama • Broj HTTP requestova
  4. Robert Bašić ~ PHPSrbija #20 Kod nikad nije usko grlo…

    ili?
  5. Robert Bašić ~ PHPSrbija #20 Alati zanata Xdebug • Nije

    samo za debugging KCachegrind • Prikazivanje profiling podataka
  6. Robert Bašić ~ PHPSrbija #20 Xdebug podešavanja

  7. Robert Bašić ~ PHPSrbija #20 • proj.local/slow-page?XDEBUG_PROFILE=1 • Firefox: The

    easiest Xdebug • Chrome: Xdebug helper Pokretanje profilinga
  8. Robert Bašić ~ PHPSrbija #20 KCachegrind

  9. Robert Bašić ~ PHPSrbija #20 Broj poziva

  10. Robert Bašić ~ PHPSrbija #20 Ko je kriv?

  11. Robert Bašić ~ PHPSrbija #20 Ne, stvarno, ko je kriv?

  12. Robert Bašić ~ PHPSrbija #20 Najlakše je prebaciti krivicu na

    druge...
  13. Robert Bašić ~ PHPSrbija #20 Svi su krivi!

  14. Robert Bašić ~ PHPSrbija #20 Graf, da vidiš

  15. Robert Bašić ~ PHPSrbija #20 Context, da shvatiš

  16. Robert Bašić ~ PHPSrbija #20 Popravljanje problema performansi Ovo je

    do tebe
  17. Robert Bašić ~ PHPSrbija #20 Nekoliko saveta • Najveći uticaj,

    najmanje rada • Profile posle svake promene • Izbegavajte preteranu optimizaciju • Naučite da koristite EXPLAIN
  18. Robert Bašić ~ PHPSrbija #20 Saveti za korišćenje Xdebuga i

    KCachegrinda • Xdebug – xdebug.profiler_output_dir – xdebug.profiler_output_name – cachegrind.out.%t.%R – Xdebug laže! • KCachegrind – Instalirajte graphviz – Koristite % relative – Uključite Cycle detection – Settings > Configure KCachegrind > Annotations > Add source folder
  19. Robert Bašić ~ PHPSrbija #20 Ostali alati • WinCacheGrind, Webgrind

    • XHProf • Blackfire.io
  20. Robert Bašić ~ PHPSrbija #20 Hvala! Pitanja?