Forest header image

Symfony Finland
Random things on PHP, Symfony and web development

Spotlight: Puli, Deployer, Async execution of the Slim Framework

A brief introduction to three contemporary topics in the PHP world:

  • Puli, a package management tool for PHP
  • Deployer - deployment tool
  • Executing the Slim Framework in Async (with ReactPHP)

Puli: Intelligent Packages for PHP

Puli is a PHP technology that aims to improve asset management on the foundation of the ubiquitous Composer packet manager. While your first reaction may be, that I'll just use Grunt, Gulp, Broccoli, etc. JavaScript tooling for asset management. Listen up. Puli aims to create reusable packages from resources for PHP applications. You know, Twig templates and such that you're used to wrapping up in an application / frameword specific manner.

Read more on or jump straight to how to use Puli with Symfony

Deployer: A PHP deployment tool written in PHP

Many Symfony 2 developers use Capifony, a deployment tool based on the Capistrano package written with Ruby. Capifony development is winding down, so it's time to look at other alternatives. Deployer is an application deployment tool written in PHP. It enables you to create your own deployment modules (recipes) or build upon recipes for popular frameworks like Symfony, Laravel or Zend Framework. It is ideal for deploying to multiple severs, supports controlled rollbacks and more.

Learn more on the official Deployer site

Executing Slim Framework in Async using ReactPHP

ReactPHP allows you to run Event-driven, non-blocking I/O applications with PHP. While this kind of activity is commonly left to Node.js and JavaScript in mainstream web development circles, there are cases where where this can be genuinely usable. Being able to execute complex PHP applications, such as ones built with the Symfony Framework, with lower overhead is an interesting proposition.

Developer Peter Petermann has demonstrates with binding his own code with the Slim Framework 3.0 to execute it using ReactPHP. With PSR-7 compatibility he can load Slim as one stack in his middleware queue. This is one example where the whole PHP community is coming together. As an end result Peter documents some impressive performance gains, due to deduplicated application bootstrapping.

Full details in the blog post: King23/Castle23/ReactPHP/Slim Framework 3.0 – for the fun of it

Written by Jani Tarvainen on Sunday August 9, 2015
Permalink - Tags: php, symfony, deployer, puli, async, reactphp

« Introducing Riot.js, RiotControl and RiotGear - Symfony has no model, but many »