PHP preloading and Symfony
PHP 7.4 added support for preloading. To make a long story short, it gives you extra performance for free. Symfony 4.4 made it easy to benefit from this feature in your projects.
You might wonder how easy it is to benefit from it? It is actually surprisingly
easy. When Symfony builds its cache, it automatically creates a file to help
PHP preload some PHP files. To enable preloading, you must tell PHP where this
file is stored in its
php.ini configuration file:
1 2 3 4 5 6 7 8
# as of 4.4.14 or 5.1.6 opcache.preload=/app/src/.preload.php # on Symfony 5.1+ before 5.1.6 opcache.preload=/app/var/cache/prod/App_KernelProdContainer.preload.php # for Symfony 4.4 before 4.4.14 opcache.preload=/app/var/cache/prod/srcApp_KernelProdContainer.preload.php
I’ve done it on all the websites I manage for my Open-Source projects. Here is the boost on the twig.symfony.com homepage:
On more complex websites, with database accesses, the percentage is going to be less dramatic, but still interesting.
php.ini template now contains this configuration, so uncomment
the right line depending on your Symfony version and enjoy a nice and free
Become a certified developer! Exams are online and available in all countries.Register Now