A PHP accelerator is a PHP extension designed to improve the performance of software applications written in the PHP programming language.
Most PHP accelerators work by caching the compiled opcode/bytecode of PHP representation of php files to avoid the overhead of parsing and compiling source code on each request (some or even most of which may never be executed). To further improve performance, the cached code is stored in shared memory and directly executed from there, minimizing the amount of slow disk reads and memory copying at runtime.
PHP accelerators substantially increase the speed of PHP applications. Improvements of web page generation throughput by factors of two to seven have been observed.
The effect on application performance of opcode caching varies widely, 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, and whether additional optimization steps are performed. 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 bytecode cache, as the optimization effort is performed just once.
The OPcache extension enhances PHP performance by caching precompiled script bytecode. Initially exclusive, Zend made their opcode caching technology open-source, and it has been included with PHP from version 5.5 onward, replacing APC as the preferred opcode caching system. OPcache conserves resources by avoiding the need to repeatedly read and compile PHP scripts, storing them in shared memory after their first execution. It further accelerates PHP by implementing advanced bytecode optimization strategies.