Systems | Development | Analytics | API | Testing

PHP Benchmarks: 8.5 vs 8.4, 8.3 and 7.4

Each year, right on schedule, a new version of PHP is released at the end of November. So, how much faster is this new release across popular frameworks and applications? Our tests show that, in general, the performance between 8.2, 8.3, 8.4 and 8.5 does not move much for a Laravel, Symfony and WordPress demo application. Moving to the newest PHP version isn’t a magic shortcut to better performance. Not everything is bleak, though.

What's new in PHP 8.5 in terms of performance, debugging and operations

The close of 2025 is near, and that also means a new version of PHP is about to be released: 8.5! There has already been some discussion regarding the latest features and modifications affecting developers, for example on Laravel News, PHP.Watch or the Zend Blog. In this post we are highlighting just the performance, debugging, and operations-related changes in PHP 8.5 that you will not find in the posts listed above. Several of these changes were even contributed by Tideways employees.

PHP 8.1 EOL: What You Need to Know

Time’s almost up on PHP 8.1 – do you have an upgrade strategy ready? With PHP 8.1 end of life occurring on December 31, 2025, it is critical to plan your upgrade strategy now. Zend can help. In this video, we provide an expert guidance on how to update PHP, including an incremental upgrade strategy for moving from PHP 8.1 and a look at how to upgrade PHP 8.1 to 8.2 and beyond. For teams unable to upgrade before the deadline, we also go through long term support (LTS) options. Using LTS provides essential security patches and expert support to keep your applications secure and compliant.

Debugging a running PHP process by attaching GDB

We are noticing that some of our requests are starting to get slow and server load increases. Checking the process list of our server, for example with htop reveals that our FPM workers are taking up all of our CPU time. Checking the health with our basic toolset of lsof to show open network connections and strace to show syscalls does not reveal any activity. This means that the workers are spending time processing data without any externally visible activity.

Improve MySQL Database Performance with the InnoDB Buffer Pool configuration

The database is often the source of performance problems in PHP applications, but there are many different reasons why this is the case. The most straightforward is that individual queries that the application issues are slow, due to their inefficient structure, by not using indexes or other coding mistakes. But for MySQL databases, a common problem is also the misconfiguration of the server itself.

How we use hyperfine to measure PHP Engine performance

One of our recurring jobs at Tideways is to ensure that all of our instrumentation works with new and upcoming PHP versions. For us, “working” doesn’t just mean that the results are correct, but that your PHP extension is fast, gathering insights for our customers with a minimal performance overhead.

How to Migrate an App in PHP

Looking to learn how to migrate an app in PHP, or at least how to kickstart your strategy? This clip from our recent webinar, “Managing Mission-Critical Web App Migrations,” has the PHP tips you need for a successful app migration. See how to choose the right PHP version, deal with outdated third-party packages, and tackle framework migrations.

Testing if Franken PHP Classic Mode is faster and more scalable than PHP-FPM

FrankenPHP bills itself as “The Modern PHP App Server” and provides a single-process solution to running PHP. Its worker mode allows to greatly increase the performance of cleanly developed applications that are compatible with it by saving on framework bootstrapping time. Unfortunately, not every application is compatible with worker mode. Depending on the amount of global state kept by the application, updating it for worker mode is not always easy.

PHP Queuing With ZendHQ & JobQueue

The ZendHQ JobQueue is a language-agnostic solution for PHP queuing and job automation. Unlike traditional CRON setups, it centralizes job management and eliminates the need to dig through system logs. With support for deferred, recurring, and scheduled jobs, you can streamline tasks like generating invoices asynchronously. Get the full details in this webinar clip!