Question 233 of 1,040
Design High-Performing ArchitectureshardMultiple SelectObjective-mapped

Quick Answer

The answer is to create a dedicated cache behavior for the static asset path and send long Cache-Control max-age and immutable headers for the versioned objects. This works because content-hashed filenames make the objects immutable, meaning they never change between versions, so a long cache duration is safe and prevents unnecessary revalidation. By isolating the static path in its own behavior, you can configure a cache policy that excludes cookies, query strings, and unneeded headers from the cache key, which directly improves the CloudFront cache hit ratio for static assets without altering application behavior. On the SAA-C03 exam, this scenario tests your understanding of cache key composition versus cache duration—a common trap is confusing forwarding headers with cache duration settings. Remember the memory tip: “Hash the name, lock the cache, isolate the path” to keep static assets serving from edge locations efficiently.

SAA-C03 Design High-Performing Architectures Practice Question

This SAA-C03 practice question tests your understanding of design high-performing architectures. This is a configuration task: choose the command set that satisfies every stated requirement. Small differences — like 'secret' vs 'password' or 'transport input ssh' vs 'all' — change whether the answer is correct. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.

A media company serves versioned JavaScript and CSS files from Amazon S3 through CloudFront. After each release, the cache hit ratio drops sharply because the same distribution also fronts a personalized API path, and the current cache policy forwards cookies, all query strings, and several headers to every origin request. The static assets already use content-hashed filenames. Which two changes will most directly improve cache hit ratio for the static assets without changing the application behavior? Select two.

Question 1hardmulti select
Read the full NAT/PAT explanation →

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Create a dedicated cache behavior for the static asset path that excludes cookies, query strings, and unneeded headers from the cache key.

Option A is correct because creating a dedicated cache behavior for the static asset path (e.g., /static/*) allows you to configure a cache policy that excludes cookies, query strings, and unneeded headers from the cache key. Since the static assets use content-hashed filenames, they are immutable and do not vary by user-specific attributes. By removing these variables from the cache key, CloudFront can serve the same cached object to all users, drastically improving the cache hit ratio.

Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Create a dedicated cache behavior for the static asset path that excludes cookies, query strings, and unneeded headers from the cache key.

    Why this is correct

    Separating the static asset behavior lets CloudFront cache those objects independently from the personalized API. Excluding cookies, query strings, and unnecessary headers prevents cache fragmentation, so many viewers can reuse the same cached object. This is the most direct way to raise hit ratio without altering how the application serves assets.

    Related concept

    Read the scenario before looking for a memorised answer.

  • Keep the content-hashed filenames and send long Cache-Control max-age and immutable headers for the versioned objects.

    Why this is correct

    Versioned filenames make the objects safely cacheable for a long time because a new release produces new object names. Long max-age values and immutable headers tell browsers and CloudFront that the object will not change in place, which increases reuse and reduces origin fetches. This improves performance and lowers origin load.

    Related concept

    Read the scenario before looking for a memorised answer.

  • Increase the size of the S3 bucket’s underlying storage to absorb more origin traffic.

    Why it's wrong here

    S3 storage capacity does not affect cache key design or CloudFront reuse. The problem is request variation, not insufficient bucket storage. Increasing storage size will not raise the cache hit ratio or reduce repeated origin requests.

  • Add Lambda@Edge logic to append a timestamp to every asset request so updates are always fetched immediately.

    Why it's wrong here

    Appending a timestamp intentionally destroys cacheability by making every request unique. That approach may force freshness, but it worsens hit ratio and increases origin traffic. It is the opposite of what a high-performing static asset design should do.

  • Disable compression so CloudFront can treat each object as a separate cache entry.

    Why it's wrong here

    Compression does not control cache-key fragmentation in a useful way here. Disabling compression can actually hurt transfer efficiency and does not address the excessive variation caused by headers, cookies, and query strings. The origin request pattern would remain inefficient.

Common exam traps

Common exam trap: answer the scenario, not the keyword

The trap here is that candidates may think that content-hashed filenames alone guarantee high cache hit ratios, but they overlook that the shared cache policy forwarding cookies and query strings creates many unique cache keys for the same static file, negating the benefit of hashed filenames.

Detailed technical explanation

How to think about this question

CloudFront cache keys are composed of the values specified in the cache policy (e.g., headers, cookies, query strings). When cookies or query strings are included in the cache key, each unique combination creates a separate cache entry, even for identical static assets. By using a dedicated cache behavior with a 'Managed-CachingOptimized' policy that ignores cookies and query strings, CloudFront treats all requests for the same content-hashed file as identical, maximizing cache hits. Additionally, sending 'Cache-Control: max-age=31536000, immutable' headers tells browsers and CloudFront to cache the asset for a year without revalidation, further reducing origin load.

KKey Concepts to Remember

  • Read the scenario before looking for a memorised answer.
  • Find the constraint that changes the correct option.
  • Eliminate answers that are true in general but not in this case.

TExam Day Tips

  • Watch for words such as best, first, most likely and least administrative effort.
  • Review why wrong options are wrong, not only why the correct option is correct.

Key takeaway

Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Real-world example

How this comes up in practice

A media company stores terabytes of video archives that are accessed once a year for audit purposes. Moving these objects to a cold storage tier (Azure Archive, S3 Glacier, or Google Nearline) costs a fraction of hot storage. Questions like this test whether you understand storage tiers, access frequency tradeoffs, and retrieval latency requirements.

What to study next

Got this wrong? Here's your next step.

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

Related practice questions

Related SAA-C03 practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

Practice this exam

Start a free SAA-C03 practice session

Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.

FAQ

Questions learners often ask

What does this SAA-C03 question test?

Design High-Performing Architectures — This question tests Design High-Performing Architectures — Read the scenario before looking for a memorised answer..

What is the correct answer to this question?

The correct answer is: Create a dedicated cache behavior for the static asset path that excludes cookies, query strings, and unneeded headers from the cache key. — Option A is correct because creating a dedicated cache behavior for the static asset path (e.g., /static/*) allows you to configure a cache policy that excludes cookies, query strings, and unneeded headers from the cache key. Since the static assets use content-hashed filenames, they are immutable and do not vary by user-specific attributes. By removing these variables from the cache key, CloudFront can serve the same cached object to all users, drastically improving the cache hit ratio.

What should I do if I get this SAA-C03 question wrong?

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

What is the key concept behind this question?

Read the scenario before looking for a memorised answer.

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

3 more ways this is tested on SAA-C03

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A marketing site serves versioned JavaScript and CSS files from Amazon S3 through CloudFront. Origin bandwidth costs are rising because CloudFront keeps revalidating objects and fetching too much content from the bucket. Which two changes most directly improve cache hit ratio and reduce origin load? Select two.

medium
  • A.Use versioned object names and long cache TTLs for immutable assets.
  • B.Forward all cookies and query strings so each request is treated as unique.
  • C.Configure a cache policy that excludes unnecessary cookies, query strings, and headers.
  • D.Switch the bucket to S3 Intelligent-Tiering to reduce CloudFront origin requests.
  • E.Add more NAT Gateways to improve the speed of CloudFront origin fetches.

Why A: Option A is correct because using versioned object names (e.g., app-v1.js, app-v2.js) combined with long cache TTLs (e.g., one year) tells CloudFront that these assets are immutable. Once cached, CloudFront never revalidates them, eliminating origin requests for unchanged files. This directly reduces origin bandwidth costs by preventing unnecessary fetches from S3.

Variation 2. A marketing site serves versioned JavaScript and CSS from an Amazon S3 origin through Amazon CloudFront. After each release, the cache hit ratio drops sharply because clients keep sending request headers and query strings that are not needed for asset retrieval. Which two changes should improve cache efficiency the most? Select two.

medium
  • A.Create a CloudFront cache policy that excludes unnecessary headers, query strings, and cookies from the cache key.
  • B.Use versioned filenames or content hashes for static assets and apply long-lived immutable caching.
  • C.Move the S3 origin behind an Application Load Balancer so CloudFront can cache responses more effectively.
  • D.Store the objects in Amazon S3 Standard-IA so repeated requests are cheaper.
  • E.Lower the CloudFront TTL to zero so viewers always receive the newest content immediately.

Why A: Option A is correct because CloudFront cache policies allow you to explicitly control which headers, query strings, and cookies are included in the cache key. By excluding unnecessary ones (e.g., User-Agent, random query parameters), you prevent cache fragmentation and ensure that identical assets served with different request metadata map to the same cached object, dramatically improving the cache hit ratio.

Variation 3. A static website stores assets in S3 and is delivered through CloudFront. Analytics show low cache hit ratio, many origin fetches for the same JavaScript bundles, and elevated S3 GET request costs. Most requests include unnecessary cookies, and the text assets are uncompressed. Which changes should the team make? Select three.

hard
  • A.Configure a CloudFront cache policy that excludes unnecessary cookies and headers from the cache key.
  • B.Enable Origin Shield for the distribution to reduce duplicate requests reaching the S3 origin.
  • C.Enable compression for text-based objects such as JavaScript and CSS.
  • D.Switch the origin to an Application Load Balancer so CloudFront can cache the assets more effectively.
  • E.Disable caching so viewers always retrieve the newest version directly from S3.

Why A: Option A is correct because a CloudFront cache policy that excludes unnecessary cookies and headers from the cache key prevents CloudFront from creating multiple cache entries for the same object based on varying cookie values. This increases the cache hit ratio by ensuring that identical JavaScript bundles are served from the edge cache rather than triggering separate origin fetches for each unique request, thereby reducing S3 GET request costs.

Last reviewed: Jun 11, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This SAA-C03 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SAA-C03 exam.