News Feed
Sections




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

Patrick Allaert:
Composer speeding up class autoloading
January 28, 2013 @ 12:22:43

In this new post Patrick Allaert offers a solution that can help speed up the inclusion of files via the Composer autoloader (in addition to the already present "optimize-autoloader" option).

The problem with the classmap strategy and the nature of PHP is that there is no (easy) way to have a persistent variable across requests containing the classmap. [...] This [large returned array of mappings] can even take a big portion of your request's response time when you have hundreds or thousands of classes like it is the case with eZ Publish 5 being based on Symfony, where about 2 600 classes are involved.

He suggests something that could be included into the Composer functionality itself - creating symbolic links in the PSR-0 standard to the location of the files to make it easier for Composer to resolve their location (based on namespace, not having to find them). Some sample code is included showing an additional autoloader that then uses the vendor names to match the path directly.

0 comments voice your opinion now!
composer symlinks autoload speed performance


blog comments powered by Disqus

Similar Posts

SitePoint PHP Blog: Web Performance Tricks - Beyond the Basics

Arnold Daniels' Blog: Improve performace: check your loops

Shay Ben Moshe's Blog: PHP's native array vs SplFixedArray performance

Zend Developer Zone: The ZendCon Sessions Episode 7: High Performance PHP & MySQL Scaling Techniques

Juozas Kaziukenas' Blog: Zend Framework and Doctrine. Part 3


Community Events

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


series testing laravel podcast php7 performance interview application voicesoftheelephpant opinion composer version community api symfony2 release introduction framework library example

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