News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Kurt Payne's Blog:
User register_tick_function to profile your code
February 07, 2012 @ 13:26:23

Kurt Payne has a new post to his blog showing how to use register_tick_function with a callback to help benchmark and profile your application to find its pain spots.

A profiler gives you the ability to trace the performance of your code through every function call and create an overview of your system's performance over a certain time period and helps you make intelligent decisions about where to look for problems. [...] But what if you're in an environment where you can't install [the xdebug or xhprof] extension? Luckily, php has a built-in function called register_tick_function that gives you a way to hook in to every user function that's called. With this, you can write a profiler yourself.

A bit of sample code illustrates his method - it defines a "do_profile" function and assigns it with the register_tick_function call. This function generates a debug backtrace and echos out the function path it took to get to that spot (output is included). He provides code for a bit more useful profiling and points out that it could easily be graphed to help visualize the problems. Also included are a few caveats to watch out for when using this method of profiling.

0 comments voice your opinion now!
registertickfunction profile graph performance xdebug xhprof


blog comments powered by Disqus

Similar Posts

Learncomputer.com: PHP Profilers Compared (PHP Quick Profiler & XDebug)

PseudoCoder.com: How To Really Use Xdebug To Speed Up Your App

Job Posting: Ning Seeks Web Application Performance Engineer (Palo Alto, CA)

Till's Blog: Zend Framework performance

Zend Developer Zone: Actuate and Zend Collaborate to Deliver Reporting for PHP


Community Events





Don't see your event here?
Let us know!


series symfony deployment update package laravel framework opinion introduction install unittest library tips community podcast release language interview zendserver api

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework