Revealing Performance Secrets with Profiling

This course is in the planning stages

We're developers... so of course we like fast stuff! But performance is more than a nice-to-have, it has a serious impact on how happy your customers are and (gasp) on sales! How sure are you that your app is as fast as it could be? Are there hidden (and maybe easy-to-fix) performance bottlenecks? And if there are... how can we find them? Ah, welcome to the science-art of profiling!

In this tutorial, we'll talk about our go-to profiling tool: and how to leverage it to find any type of performance blocker. By mastering some skills, we'll find and eliminate real performance problems:

  • Blackfire setup & profiling your first page!
  • Understanding the call graph: wall time vs IO time vs CPU time
  • Callers vs callees & optimizing calls
  • Deep profiled details: OPcache memory, RealPath cache, etc
  • Exclusive versus Inclusive call time
  • Profiling AJAX requests... and "all rtequests"
  • Profiling a command-line script
  • Investigating SQL query problems & network calls
  • Blackfire Environments
  • Writing performance assertions
  • Automated performance checks
  • The Blackfire SDK: generate custom profiles from your code
  • Using Blackfire in PHPUnit for performance assertions
  • Pull request integration
  • What about profiling the frontend?

Ready to find those hidden performance bugs and make your app fly? Let's do this!

Your Guides
Ryan Weaver

Questions? Conversation?