My previous post about our recent upgrade to PHP 7.3 has been incredibly well received — thank you to everyone who reached out or sent me an email with follow-up questions!
The most common question of them all, though, was this:
"What kind of performance improvements and speed-ups did you notice in your particular real-world case?"
And honestly, I'm more than happy to share our results publicly, as we've been running benchmarks on every new version of our codebase for years now — and this way I can put those benchmarks to an even better use. 😃
Compared to PHP 5.6 that we had been previously running for a relatively long time, the newest PHP 7.3 performs amazingly well:
- When processing large-scale data, we can now run 1,000,000 standardized operations in 0.453 seconds where that same work-load took 0.818 seconds before. These results have been measured repeatedly over roughly 100-million-op work-loads, with averages taken. That's an 80.5% improvement!
- When running a really complex operation on a somewhat sizable dataset, we now get the same result in 10.48 seconds that previously took 14.84 seconds — which is another 41.5% improvement.
- And finally, under simulated heavy website traffic load, our website can now serve 285% as many requests per second as it could before! In other words, that's a 1.85x speed-up.
These results are mind-blowing for something that required us to rewrite a relatively small part of our codebase! Although, there is a caveat...
As soon as we started the required rewrite of the incompatible parts of our code, we decided (in true programmer fashion!) to pull off a major multi-month code-refactoring effort that touches virtually all of our existing code.
And as a final result, we're looking to get the average performance increase somewhere into the 300-400% range... while making our code even more robust!
It's going to be a huge win for both our customers and our dev team, and we couldn't be more excited about it! Stay tuned! 😃
Published on: May 15th, 2019
← Previous: Cutting-edge PHP 7.3