«
DRX
Web Developer Resource Index: Performance
What began as a simple library of CGI functions written in Perl, and later C, to aid creator
Rasmus Lerdor in maintaining his online resume, PHP has matured into an enterprise-level, Web
application language.
As the language itself, and the applications written in it, have grown in complexity, so has the need to address performance issues—particularly on large-scale projects. These issues are further complicated by the number of variables inherent it today’s Web development process. Tracking down the bottlenecks in your system can be daunting, with hardware, data center architecture, networking, database systems and schema design, Web server and RDBMS configuration, and any number of other factors, all playing a role.
The resources listed in the PHP Performance category, both tools and techniques, are meant to help the developer find solutions when they are working on an application and discover its response time is less than exceptable. Or, better yet, to take a more proactive approach before a single line of code is written. However, developers don’t always have this luxury. Often they are tasked with building on or maintaining software written before them, and find themselves faced with correcting such issues.
When designing a Web application that has the potential (one hopes) of attracting large numbers of users, and thus many page requests, it must designed to scale up or you will end up with a lot of sleepless nights and headaches in the morning.
“Make no little plans; they have no magic to stir men’s blood.”
—Daniel Burnham
“The whole is greater than the sum of its parts.”
—Aristotle
Updated: Thursday, November 20th, 2008 @ 12:30 PM EST
Navigation
Resources
-
1.
Alternative PHP Cache
APC is a free opcode and memory cache designed as an optimizing framework for creating robust and responsive Web applications written in PHP. It remains a PECL extension thus not bundled with PHP, so you will have to download and install it separately. [1838]
★★★★★
URI:http://php.net/manual/book.apc.php
Author:George Schlossnagle [1]
Reviewed:Tuesday, November 18th, 2008 @ 10:55 PM EST
by:Douglas Clifton
Alternative PHP Cache
cachedeveloperextensionperformancephpprogramming
-
2.
memcachedMemcached is a high-performance, distributed memory object caching system designed to increase dynamic Web applications performance by alleviating database load. Note that you can use it with any language/database that has an API, PECL has one for PHP. [1844]
★★★★★
URI:http://www.danga.com/memcached/
Author:Brad Fitzpatrick [1]
Reviewed:Thursday, November 20th, 2008 @ 12:30 PM EST
by:Douglas Clifton
memcached
apicachedatabaseextensionmysqlperformancephp
-
3.
Accelerating PHP ApplicationsA really well done presentation on optimizing your PHP applications. Includes tips for install/compile/config (PHP and Apache server), cache and compression, file I/O, sessions, database optimization, etc. [1069]
★★★★★
URI:http://talks.php.net/show/acc_php/1
Author:Ilia Alshanetsky [1]
Reviewed:Saturday, April 30th, 2005 @ 4:22 AM EDT
by:Douglas Clifton
Accelerating PHP Applications
apachecachedatabaseinstallperformancephpsysadmin
-
4.
Cache it! Solve PHP Performance ProblemsThis 5-part article from Sitepoint will help you get the most out of both dynamic PHP Web pages from the server perspective, and still have them cached by the browser on the client-side. A thorough discussion and well worth the time to read and implement. [1843]
★★★★☆
URI:http://www.sitepoint.com/article/caching-php-performance/
Author:Ben Balbo [1]
Reviewed:Thursday, November 20th, 2008 @ 11:51 AM EST
by:Douglas Clifton
Cache it! Solve PHP Performance Problems
apachecachehttpperformancephpprogrammingtemplate
-
5.
Mohawk Shared Cache ServerA customizable high performance data storage server. MCache is perhaps best known for its use as a replacement for the default PHP session handler. It can use memory for transient storage, or persistently via the file system or a database such as MySQL. [1840]
★★★★☆
URI:http://www.mohawksoft.org/?q=node/8
Author:Mohawk Software [1]
Reviewed:Wednesday, November 19th, 2008 @ 4:16 PM EST
by:Douglas Clifton
Mohawk Shared Cache Server
developermysqlperformancephpprogramming
-
6.
The PHP BenchmarkA painstaking look at performance results using a number of related PHP iterators/loops, operators, quoting, output, type checking, and so on. Microtime statistics for each test. Speaking of foreach(), from the results...damnit, I use them all the time. [1839]
★★★★☆
URI:http://www.phpbench.com/
Author:Chris Vincent [1]
Reviewed:Wednesday, November 19th, 2008 @ 12:15 AM EST
by:Douglas Clifton
The PHP Benchmark
benchmarkperformancephpprogramming
-
7.
WebgrindAn Xdebug profiling Web frontend written in PHP5. It implements a subset of the features of KCachegrind with quick, cross-platform installation. Simply unzip the package in a location accessible by your Web server and start profiling from your browser. [1808]
★★★★☆
URI:http://code.google.com/p/webgrind/
Author:Google Code [2]
Reviewed:Sunday, November 9th, 2008 @ 10:53 AM EST
by:Douglas Clifton
Webgrind
browsercachegrinddebugperformancephpprofilingprogrammingweb server
-
8.
Xdebug ProfilerA powerful tool that gives you the ability to analyze your PHP code and determine bottlenecks or generally see which parts of your code are slow and warrant refactoring. Output is in cachegrind format for analysis using KCacheGrind (KDE) or WinCacheGrind. [1714]
★★★★☆
URI:http://xdebug.org/docs/profiler
Author:Derick Rethans [2]
Reviewed:Thursday, October 9th, 2008 @ 12:37 PM EDT
by:Douglas Clifton
Xdebug Profiler
cachegrinddebugdeveloperperformancephpprofilingsoftwaretools
-
9.
Tuning Apache and PHP for Speed on UnixTo supplement John's detailed Optimizing PHP analysis, is this collection of tips, howtos and links for getting the most out of your PHP and Apache installation. My suggestion: pass arrays and objects by reference, both into and returning from functions. [1469]
★★★★☆
URI:http://phplens.com/phpeverywhere/?q=node/view/8
Author:John Lim [2]
Reviewed:Friday, August 5th, 2005 @ 6:55 PM EDT
by:Douglas Clifton
Tuning Apache and PHP for Speed on Unix
apacheconfigperformancephpunix
-
10.
eAccelerator
This is the new incarnation of Turck MMCache, picked by Frank Alcantara after the original developer, Dmitry Stogov, stopped supporting MMCache. Version 0.9.3 final was just released last month. I've had great success with the original in the past. [1314]
★★★★☆
URI:http://eaccelerator.sourceforge.net/
Author:eAccelerator Contributors [1]
Reviewed:Tuesday, June 21st, 2005 @ 8:11 PM EDT
by:Douglas Clifton
eAccelerator
apacheperformancephpsysadmin
-
11.
Burning the Bulb BrighterAnd you have burned so very, very brightly, Roy. A detailed discussion of PHP accelerators and optimizers, including APC, PHPA, Zend Optimizer and Turck MMCache (now eAccelerator). The original developer of Turck is now working for Zend. No comment. [1313]
★★★★☆
URI:http://www.linux-mag.com/content/view/1676/2189/
Author:Michael Bordash [1]
Reviewed:Tuesday, June 21st, 2005 @ 7:22 PM EDT
by:Douglas Clifton
Burning the Bulb Brighter
apachelinuxperformancephpsysadminzend
-
12.
A Howto on Optimizing PHPAn excellent, and very detailed, article on optimizing your PHP applications. Topics include the most common bottlenecks, tuning your hardware, Web server and database engine, opcode and output caching, and benchmarking. Study this one carefully. [1264]
★★★★☆
URI:http://phplens.com/lens/php-book/optimizing-debugging-php.php
Author:John Lim [2]
Reviewed:Friday, June 3rd, 2005 @ 11:32 PM EDT
by:Douglas Clifton
A Howto on Optimizing PHP
apachehowtoperformancephpweb server
-
13.
PHP Cache ControlFred describes a simple scheme for caching dynamic PHP documents. Works only for documents based on the script's modified timestamp, you will need another approach if the content is extracted from a DB for example. I recommend adding an Etag header. [1224]
★★★★☆
URI:http://ontosys.com/php/cache.html
Author:Fred Yankowski [1]
Reviewed:Sunday, May 22nd, 2005 @ 1:03 PM EDT
by:Douglas Clifton
PHP Cache Control
cachehttpperformancephp
Related Categories
Matching Tags
apache api benchmark browser cache cachegrind config database debug developer extension howto http install linux mysql performance php profiling programming software sysadmin template tools unix web server zend
Indexes
Search for PHP Performance on:

Last updated: Thursday, November 20th, 2008 @ 12:30 PM EST [2008-11-20T17:30:45Z]






















































































