Redis object cache

Standalone, Sentinel, and Cluster Redis configuration, isolation, circuit behavior, and safe diagnostics.

2 min readPart of Performance Optimisation

The Redis Object Cache is the optional in-PHP cache layer. It keeps repeated option, post, term, and transient reads out of MySQL when the page cache cannot serve a complete request.

Enable only after a connection test

Open Object Cache, choose standalone, Sentinel, or Cluster, and test the connection. The plugin refuses to replace a foreign object-cache.php. A successful enable writes the owned drop-in and its guarded runtime configuration, then flushes stale entries.

wp wppo object-cache status
wp wppo object-cache ping
wp wppo object-cache enable --host=127.0.0.1 --port=6379

Connection modes

  • Standalone: one Redis endpoint, with optional read replicas.
  • Sentinel: sentinel nodes plus a master name.
  • Cluster: a RedisCluster node list.

Supported controls include database selection, timeouts, TLS, persistent connections, prefixes, and compression when the installed PhpRedis extension provides it. Invalid hosts, ports, nodes, enums, and bounds are rejected by the shared configuration policy.

Secrets and configuration

Runtime connection settings belong in the guarded wp-content/wppo-redis-config.php boundary or the documented constant/environment path. Passwords are not printed by status output, settings reads, exports, or diagnostics. If a password is submitted, stored settings keep only a presence flag and the connection attempt uses the submitted value transiently.

Rotate a password on every web node before changing the Redis server credential. A partial rotation can make the drop-in fall back to its safe in-memory path and produce misleading cache misses.

Failure behavior

When Redis is unavailable, the drop-in keeps WordPress functional with a per-request in-memory fallback and surfaces a safe circuit state in the dashboard. The circuit breaker can auto-disable the drop-in after repeated connection-class failures and schedule a recovery probe; it does not turn an infrastructure outage into a site fatal.

Key isolation

Keys are namespaced for the current site/blog and include the supported WordPress salt where available. Flushes are scoped to the plugin\’s key prefix rather than blindly issuing a server-wide destructive command.

Verify

wp wppo object-cache status
wp wppo object-cache ping
wp wppo object-cache flush

Compare hit/miss and circuit information after representative traffic, not immediately after activation. Redis can be reachable while a key-prefix, serializer, or eviction policy still makes the hit ratio poor.