Microservice architectures remain popular and microframeworks of all sorts are an essential part of the scene. At the end of November with the release of Symfony 3.0 (and 2.8) the Symfony Full Stack Framework received an option to use a lighter bootstrap, a Microkernel in Symfony terms.
In the previous articles we have evaluated PHP performance on different runtimes, adding server resources (CPU & RAM), and comparing the Symfony Proxy and Varnish - using eZ Platform - a CMS built on the Symfony Framework.
Now let's try an unconventional method of executing PHP applications, PHP-PM.
In the previous articles we have evaluated PHP performance on different runtimes (PHP 5.6, HHVM, PHP 7) as well as how it behaves when adding server resources (CPU & RAM) using eZ Platform - a CMS built on the Symfony Framework.
In production environments Symfony and eZ Platform are likely ran behind the Varnish Reverse Proxy, which we'll evaluate next by comparing it to the built in Symfony Proxy.
In the previous article in this series we took a look at how different runtimes affect Symfony performance, by comparing PHP 5.6, HHVM 3.11 and PHP 7.0.1. The conclusion was that both HHVM and PHP 7 offer significant improvements in performance without adding server resources. In this article we'll look at how adding them affects performance.
The timespan between launches was PHP 5 to 7 was long, but feature and performance wise there were a number of improvements in the 5.x series. For performance the greatest leap was inclusion of the Opcode cache by default since 5.5.
Benchmarks are the mother of all click baits. They draw people like flies, create controversy and make people jump to conclusions. For raw computation such as video encoding benchmarks can be very effective at demonstrating differences between different technologies.
For the dynamic environment web applications run in, benchmarks rarely represent reality and are more or less synthetic. Yet web benchmarks have got their place to give ballpark figures of differences.