How to Choose Cache Tools
Cache incidents are solved faster when split into three paths: no caching, failed revalidation, and layer mismatch.
First tool by symptom
- Update not reflected → Cache Not Working Troubleshooting
- Always 200 instead of 304 → Cache Diagnostic
- Only CDN path is stale/different → HTTP Cache Mismatch
Tool role map
- Cache Not Working Troubleshooting: symptom-first entry point
- Cache Response Analyzer: decision from a single response
- HTTP Cache Mismatch: compare behavior across environments
- Cache Diagnostic: cross-header comprehensive diagnosis
- Cache Control Overview / Inspect: policy design and directive-level details
Recommended practical flow
- 1) Fix the symptom and choose the first entry tool
- 2) Collect header evidence using Response Analyzer or Diagnostic
- 3) If CDN behavior differs, move to Mismatch and isolate delivery layers
- 4) Finalize cache policy with Overview/Inspect to prevent recurrence
Headers to always collect
- Response: Cache-Control, ETag, Last-Modified, Expires, Age, Vary
- Request: If-None-Match, If-Modified-Since, Cache-Control
- Path info: Via, X-Cache, and CDN-identifying response headers
- Collect from browser, CDN, and origin for the same URL
Policy by resource type
- HTML: short TTL + revalidation (no-cache or short max-age)
- API (JSON): no-store for sensitive data, validators for public data
- Static assets: versioned URL + long max-age + immutable
- CDN: separate s-maxage policy from browser-facing directives
Compared tools
- Cache Not Working Troubleshooting
- Cache Response Analyzer
- HTTP Cache Mismatch
- Cache Diagnostic
- Cache Control Overview
- Cache-Control Inspect
Common mistakes
- Applying immutable to HTML and delaying deployment reflection
- Emitting validators without checking inbound If-* requests
- Comparing browser and CDN outcomes as if they were the same layer
Post-fix recheck points
- Verify expected first 200 then revalidation 304 sequence
- Confirm old HTML does not remain stale after deploy
- Confirm Age resets as expected after CDN purge
- Check that cache branch count does not explode after Vary changes
Incident runbook
- Identify failing layer first (browser/CDN/origin)
- For mitigation, temporarily shorten HTML TTL to reduce impact
- Apply durable fixes with URL versioning and validator alignment
- Prevent recurrence with recurring header-diff monitoring
FAQ
- What if I cannot choose the first tool?
- Start with Troubleshooting for stale updates, Diagnostic for missing 304, and Mismatch for layer differences.
- What is the difference between Cache-Control Inspect and Overview?
- Inspect focuses on per-response interpretation, while Overview is for policy design and directive planning.
Referenced specs
Next to view (diagnostic order)
These links are generated from site_map rules in recommended diagnostic order.
- Cache Not Working Troubleshooting — Troubleshoot cache-not-working symptoms step by step from headers
- HTTP Cache Mismatch — Identify root causes of cache mismatches
- Cache Response Analyzer — Judge cacheability from response headers
- Cache Diagnostic — Run cross-header diagnostics for HTTP caching
- Cache Control Overview — Summarize how to use Cache-Control/Pragma/Expires together
- Cache-Control Inspect — Parse and interpret Cache-Control directives