Classify public pages, content APIs, assets and user-specific responses before editing rules. The same caching assumptions should not be applied indiscriminately to every request served by the platform.
AEM Dispatcher and CDN Caching: Keys, Invalidation and Freshness.
An AEM caching strategy must explain both when a response can be reused and when it becomes stale. This representative design separates Dispatcher eligibility from CDN behavior, with explicit tests for query parameters, publication and user-specific content.
Representative engineering design, not a verified client delivery record. Implementation steps and validation checks describe the proposed approach; no measured results are claimed.
Write a cache contract for each response class
A high hit rate can still serve the wrong response
Ignoring an output-changing query parameter or reusing a private response can make caching incorrect even when it appears fast. Freshness and response identity are part of the design, not secondary performance checks.
Treat Dispatcher and CDN as independent cache layers
Document the request path and the cache rules at each layer. A Dispatcher invalidation does not, by itself, prove that a separate CDN response is fresh; verify the configured relationship and expiration behavior.
Separate request filtering from cache eligibility
Review which requests may reach AEM independently from which responses may be cached. For query parameters, ignore only values demonstrated not to affect the response; retain a deliberate policy for personalization and authenticated access.
- List expected cacheable URL shapes and response classes.
- Review invalidation rules alongside content publication behavior.
- Inspect actual response headers and cached responses at each boundary.
Validate response identity before increasing cache reuse
Compare responses for parameter variants and access states before changing cache policy. A convenient rule that merges distinct responses is a correctness defect, not a performance optimization.
Freshness has an operational cost
Broad invalidation can cause avoidable origin work; narrow invalidation can leave dependencies stale if their relationships are not modeled. Choose a policy with explicit freshness expectations and test dependent pages.
Test cold, warm and changed content states
Use the same request fixtures across cache layers so the comparison is meaningful.
- Compare anonymous and authenticated behavior where applicable.
- Vary query parameters and confirm expected response identity.
- Publish an update and inspect delivery before and after invalidation or expiry.
Cache correctness comes before cache efficiency
Keep rules reviewable and attach a reason to each exception. This study defines a validation approach; it does not assert measured latency or cache-hit improvements.
Technical references
These sources document product behavior. The design and validation approach above are engineering proposals, not claims made by the vendors.
Working through a similar platform problem?
This representative case study explores technical trade-offs and architectural decisions for a specific engineering scenario. If you are planning a similar migration, modernization, or integration, let's discuss the engineering approach.
Start a conversation