The Hybrid Cache Pattern: Combining In-Memory and Persistent Caching for Speed

Most advice about caching stops at "add Redis" or "add Memcached," as if one layer solves every caching problem an application will ever run into. Looking back at our own systems, mature applications usually need two layers that solve two different problems. A fast, short lived, ...

Tuning PHP-FPM and OPcache for High-Traffic Applications

A surprising amount of what gets labelled as PHP performance work is actually configuration work that was simply pushed into the backlog. Without OPcache enabled and properly sized, PHP recompiles every script on every request. This adds a fixed cost to every page load, regardless of how efficient t...

MySQL Performance Tuning for Growing Applications

A database that handles ten thousand rows today does not need to be engineered for ten million rows tomorrow. Most performance problems appear gradually and can be addressed when real usage data shows where the bottlenecks are. Enable slow query logging and periodically review the queries generated ...