SOA-C02 · Question #598
SOA-C02 Question #598: Real Exam Question with Answer & Explanation
The correct answer is D: Cache-duration settings conflict with each other.. Option D is correct because CloudFront's Maximum TTL (5 minutes) acts as a hard ceiling on cache duration - when it is lower than the origin's Cache-Control max-age value (1 hour), CloudFront enforces the shorter duration. Objects expire every 5 minutes regardless of the header,
Question
A company hosts a static website in an Amazon S3 bucket. The website is accessed globally. The company has configured an Amazon CloudFront distribution and has set the S3 bucket as the distribution's origin. The Cache-Control max-age header is set to 1 hour. The Maximum TTL is set to 5 minutes. A SysOps administrator observes that website performance is lower than expected. CloudFront is not caching objects for the amount of time that is configured. What is the reason for this issue?
Options
- AThe Expires header has been set to 3 hours.
- BCached assets are not expiring in the edge location.
- CCache invalidation is missing in the CloudFront configuration.
- DCache-duration settings conflict with each other.
Explanation
Option D is correct because CloudFront's Maximum TTL (5 minutes) acts as a hard ceiling on cache duration - when it is lower than the origin's Cache-Control max-age value (1 hour), CloudFront enforces the shorter duration. Objects expire every 5 minutes regardless of the header, causing frequent origin fetches and degraded performance since the admin expected 1-hour caching.
Why the distractors are wrong:
- A is wrong because no
Expiresheader is mentioned in the scenario, and even if it existed, it would still be subject to the Maximum TTL cap. - B is wrong because it describes the opposite problem - objects not expiring would cause stale content, not poor performance from cache misses.
- C is wrong because cache invalidation is a mechanism to purge cached content early; its absence wouldn't cause objects to expire too quickly.
Memory tip: Think of CloudFront's TTL hierarchy as a "sandwich" - Minimum TTL is the floor, Maximum TTL is the ceiling, and origin headers (like Cache-Control max-age) only matter if they fall between those two values. When max-age exceeds Maximum TTL, Maximum TTL always wins.
Topics
Community Discussion
No community discussion yet for this question.