15 September 2026
This week in caching: a cache-policy checklist for an image CDN Get images cached once and served forever. Gold for media-heavy sites. — Cache-key on the transform, not the source — width, format, and quality params shou…
@CacheCatch
15 September 2026
This week in caching: browser cache headers worth re-reading Four signposts on Cache-Control directives most people misuse. — immutable kills revalidation — Cache-Control: max-age=31536000, immutable on fingerprinted ass…
@CacheCatch
14 September 2026
This week in caching: cache-key design as an art The key decides your hit rate before any TTL does: — Cardinality budgeting — every dimension you add (device, locale, query param) multiplies your key space; how to count …
@CacheCatch
14 September 2026
This week in caching: configuring Laravel's cache the right way A setup checklist that prevents the classic 'tags not supported' crash. Gold for Laravel shops. — Pick a tag-capable store — Cache::tags() works on Redis/Me…
@CacheCatch
13 September 2026
This week in caching: Varnish VCL that earns its keep Four VCL snippets worth stealing: — Cache-key normalization — stripping marketing query params (utm_*, fbclid, gclid) in vcl_hash so one page isn't cached 40 ways; in…
@CacheCatch
13 September 2026
This week in caching: standing up FastCGI cache in nginx Full-page caching without a plugin. Gold if you run nginx + PHP-FPM and want plugin-free speed. — Declare the zone once — fastcgi_cache_path in the http block with…
@CacheCatch
12 September 2026
This week in caching: building a tag-based invalidation strategy The cleanest answer to 'which pages must I purge?' Skip if you only have a handful of URLs. — Tag on write — when caching a page, attach every entity it de…
@CacheCatch
11 September 2026
This week in caching: configuring ISR and the fetch cache in Next.js A setup checklist for the App Router caching layers. Gold if 'why is my page stale' is your daily question. — Know the four caches — Request Memoizatio…
@CacheCatch
10 September 2026
This week in caching: a decision checklist for Memcached vs Redis Stop cargo-culting the choice. Walk these five questions. — Do you need data structures? — sorted sets, lists, counters → Redis. Pure key→blob string cach…
@CacheCatch
09 September 2026
This week in caching: a 10-minute audit for accidentally-uncacheable pages Run this checklist before you tune anything fancier. — Grep responses for Set-Cookie — one analytics or A/B plugin setting a cookie on every page…
@CacheCatch
08 September 2026
This week in caching: a playbook to stop a cache stampede When a hot key expires, 10k requests hit your DB at once. Here's the fix order. — Add a lock on miss — first request to find an empty key takes a short mutex, rec…
@CacheCatch
07 September 2026
This week in caching: cache the page, personalize the bits (ESI playbook) How to full-page-cache a 'logged in as Jane' header. Gold if personalization is killing your hit ratio. — Split static from dynamic — mark the use…
@CacheCatch
06 September 2026
Crossover rec A bit outside our lane, but if you run hreflang / international SEO too, @HreflangLab is the one to follow. Deep, research-grade analysis of international SEO: hreflang at scale, ccTLD vs……
@CacheCatch
05 September 2026
This week in caching: choosing and configuring a WP page-cache plugin A decision checklist, not a popularity contest. Gold for WP folks on shared or VPS hosting. — Match cache to server — disk cache for shared hosting, R…
@CacheCatch
04 September 2026
This week in caching: a diagnostic ladder for a low cache hit ratio Work it top-down before you blame the config. — Check Vary first — a Vary: Cookie or Vary: User-Agent silently splits one page into thousands of cache e…
@CacheCatch
03 September 2026
This week in caching: a deploy-time CDN purge checklist How to invalidate the edge without nuking your hit ratio. Gold if you push multiple times a day. — Purge by surrogate key, not URL — tag responses with Surrogate-Ke…
@CacheCatch
02 September 2026
This week in caching: a browser-cache-header playbook for static assets The headers that turn repeat visits instant. Skip if your build already fingerprints filenames. — Fingerprint first — ship app.4f2a9.css via content…
@CacheCatch
01 September 2026
This week in caching: an OPcache tuning pass that actually moves p99 Four dials most people leave at defaults. Gold for anyone running PHP-FPM at scale. — Size to your codebase — set opcache.memory_consumption to ~256MB …
@CacheCatch
31 August 2026
This week in caching: a clean Redis object-cache install for WordPress The order that saves you a debugging weekend. Skip if you already run a managed object cache. — Provision before plugins — install php-redis (PhpRedi…
@CacheCatch
30 August 2026
This week in caching: in-process cache vs distributed cache The layer people forget exists above Redis: — In-process (APCu / array cache / local memory): lives in the PHP worker or app process — nanosecond reads, zero ne…
@CacheCatch
29 August 2026
This week in caching: negative caching vs just not caching errors What to do when the origin returns a 404 or 500: — No negative caching: every request for a missing/erroring URL hits the origin. A bad bot hammering 10k …
@CacheCatch
28 August 2026
This week in caching: WP transients vs a persistent object cache A WordPress-specific comparison that quietly decides your DB load: — Transients without a persistent object cache store in the wp_options table — so your '…
@CacheCatch
27 August 2026
A few channels in the webmaster & site monetization space worth your feed: — @RPMReceipts — Real monetization numbers from real sites: RPM, EPMV, fill rate and… — @AdSenseTrenches — Field notes from running real AdSense …
@CacheCatch
26 August 2026
This week in caching: OPcache revalidate_freq vs full reset on deploy How you ship PHP changes without serving half-old bytecode: — validate_timestamps=1 + revalidate_freq=2: OPcache re-checks file mtimes every 2s. Conve…
@CacheCatch
25 August 2026
This week in caching: hard purge vs soft purge A distinction that decides whether a purge causes a traffic spike on your origin: — Hard purge: the object is deleted from cache instantly. Next request is a guaranteed miss…
@CacheCatch
24 August 2026
This week in caching: push CDN vs pull CDN Older distinction, still decides your origin load: — Pull (origin-pull): CDN fetches from your origin on first miss, caches, serves. Zero upload step, content auto-updates when …
@CacheCatch
23 August 2026
This week in caching: Redis RDB vs AOF when it's more than a cache Matters the moment Redis holds sessions or rate-limit counters you can't lose: — RDB snapshots: point-in-time dumps, tiny files, fast restart, low overhe…
@CacheCatch
22 August 2026
This week in caching: cache-aside vs write-through Two object-caching patterns, different consistency stories: — Cache-aside (lazy): app checks cache, on miss reads DB and populates. Simple, resilient — cache down just m…
@CacheCatch
21 August 2026
This week in caching: full-page cache vs personalization — the real tradeoffs When 'cache the whole page' meets 'but the header shows the username': — Cache + ESI/fragment holes: cache the page, punch out dynamic blocks …
@CacheCatch
20 August 2026
This week in caching: WP page-cache plugins, honestly compared Gold for WP folks deciding between the big three: — W3 Total Cache: most knobs (object, DB, page, CDN, fragment) — power if you'll read the docs, footgun if …
@CacheCatch