Wednesday, August 25, 2010

PHP accelerator

A PHP accelerator is an extension designed to boost the performance of software applications written using the PHP programming language. Most PHP accelerators work by caching the compiled bytecode of PHP scripts to avoid the overhead of parsing and compiling source code on each request (some or all of which may never even be executed). For best performance, caching is to shared memory with direct execution from the shared memory and the minimum of memory copying at runtime. A PHP accelerator typically reduces server load and increases the speed of PHP code anywhere from 2–10 times, depending on factors such as the inherent execution time of the PHP application and the percentage of source code actually executed on a given request. While a code optimizer may even slow down overall performance when used in isolation, it can provide an additional performance boost when coupled with a code cache as the optimization effort is performed just once.

List of PHP accelerators

Alternative PHP Cache

Alternative PHP Cache (APC) is a free, open source framework that optimizes PHP intermediate code and caches data and compiled code from the PHP bytecode compiler in shared memory. APC is quickly becoming the de-facto standard PHP caching mechanism as it will be included built-in to the core of PHP starting with PHP 6.

eAccelerator

eAccelerator was born in December 2004 as a fork of the Turck MMCache project. Turck MMCache was created by Dmitry Stogov and much of the eAccelerator code is still based on his work. eAccelerator also contained a PHP encoder and loader, but the development staff discontinued the encoder and removed this feature after December 2006.

XCache

XCache is a fast, stable PHP opcode cacher that has been tested and is now running on production servers under high load. It is tested on linux and supported under Windows, for thread-safe and non-thread-safe versions of PHP. This relatively new opcode caching software has been developed by mOo, one of developers of Lighttpd, to overcome some of the limitations of the existing solutions at that time; such as being able to use it with new PHP versions as they arrive.

Nusphere PhpExpress

PhpExpress is NuSphere's free PHP accelerator that speeds up the execution of regular PHP files and provides support for loading of PHP files encoded with NuSphere's PHP encoder Nu-Coder. PhpExpress loads both encoded and not encoded PHP files directly into the PHP engine, saving time and boosting performance of the PHP interpreter. PhpExpress also caches the files and thus provides a speed boost even for non-encoded files.

Zend Accelerator

Zend Accelerator is a component of Zend Server and Zend Server Community Edition. Accelerator speeds up PHP execution by opcode caching and optimization. It stores precompiled script bytecode in shared memory. This eliminates the stages of reading code from the disk and compiling it on future access. For further performance improvements, the stored bytecode is optimized for faster execution.

Zend Platform

Zend Platform (formerly Zend Cache and then Zend Accelerator) is a commercial Web Application Server product. It has a complete set of performance capabilities that includes more than a simple PHP accelerator. Features include code caching/acceleration, data caching, content (html output) caching, download optimization and off-line (asynchronous) processing capabilities that can result in significant performance improvements for most PHP applications. It also includes detailed PHP monitoring and root cause analysis support to help in tuning and debugging, session fail-over support for HA (High Availability) needs and other integration capabilities including Java integration.

Windows Cache Extension for PHP

A free, open source (New BSD License), PHP-accelerator developed by Microsoft for PHP under Windows. The extension includes PHP opcode cache, file cache, resolve file path cache, object/session cache, file change notifications and lock/unlock API's. Combination of all these caches results in significant performance improvements for PHP applications hosted on Windows. The extension is primarily used with Internet Information Services and non-thread-safe build of PHP via FastCGI protocol.

Zend Optimizer

Despite the name, Zend Optimizer is not a code accelerator. Rather, is a free, closed source PHP extension by Zend that enables PHP to run files encoded by Zend Guard.

No comments:

Post a Comment