PPM, process manager, supercharger and load balancer for modern PHP applications

0

PHP-PM is a process manager, supercharger and load balancer for PHP applications. Based on ReactPHP and works best with applications that use request-response frameworks like Symfony’s HTTPKernel.

The approach of this is to kill the expensive bootstrap of PHP (declaring symbols, loading/parsing files) and the bootstrap of feature-rich frameworks.

PHP-PM basically spawns several PHP instances as worker bootstraping your application (eg. the whole Symfony Kernel) and hold it in the memory to be prepared for every incoming request: This is why PHP-PM makes your application so fast.

Some features of PHP-PM :

  • Performance boost up to 15x (compared to PHP-FPM, Symfony applications).
  • Integrated load balancer.
  • Hot-Code reload (when PHP files change).
  • Static file serving for easy development procedures.
  • Support for HttpKernel (Symfony/Laravel), Drupal (experimental), Zend (experimental).

Some issues might be encountered such as memory leaks, however it’s not big issue as workers will restart automatically. Also PHP-PM not work with ExtEventLoop. Drupal and Zend is very experimental and not fully working and Laravel’s debugger isn’t working perfectly yet.

Finally, streamed responses are not streamed yet and there is no windows support yet due to signal handling.

Laravel benchmark shows a great performance boost compared to PHP-FPM. Overall, it’s a great alternative to boost your web application, however HHVM could most probably perform better.

Released under an MIT license,
For more information : https://github.com/php-pm/php-pm

LEAVE A REPLY

Please enter your comment!
Please enter your name here