[{"data":1,"prerenderedAt":710},["ShallowReactive",2],{"content:\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Ftiered-caching-and-origin-shield":3,"surroundings:\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Ftiered-caching-and-origin-shield":701},{"id":4,"title":5,"body":6,"description":680,"extension":681,"meta":682,"navigation":694,"path":695,"seo":696,"stem":699,"__hash__":700},"content\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Ftiered-caching-and-origin-shield\u002Findex.md","Tiered Caching and Origin Shield",{"type":7,"value":8,"toc":664},"minimark",[9,14,29,32,145,150,179,183,189,195,201,207,269,273,278,281,345,348,352,355,359,375,379,382,480,484,487,491,494,498,524,528,534,540,546,552,556,568,577,586,595,604,613,622,626,649,654,657,660],[10,11,13],"h1",{"id":12},"how-tiered-caching-and-an-origin-shield-raise-hit-rates","How Tiered Caching and an Origin Shield Raise Hit Rates",[15,16,17,18,23,24,28],"p",{},"This guide is part of ",[19,20,22],"a",{"href":21},"\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002F","CDN Edge Caching Configuration",", within ",[19,25,27],{"href":26},"\u002Fadvanced-caching-strategies-cdn-architecture\u002F","Advanced Caching Strategies & CDN Architecture",". A large CDN has hundreds of points of presence (PoPs). In a flat configuration, each PoP that misses goes directly to your origin. A page that is popular in aggregate but requested a few times per hour in each location is a miss almost everywhere: each PoP fetches it separately, and its copy expires before the next visitor arrives. The global hit ratio looks acceptable while the visitors who matter — those in smaller regions, those on less popular pages — keep paying origin TTFB.",[15,30,31],{},"Tiered caching inserts an intermediate layer. Edge PoPs that miss ask a parent tier (a regional cache or a single designated \"origin shield\") instead of the origin. The parent aggregates misses from many edges, so popular objects are fetched from the origin once and then served to every edge that asks. The effective hit ratio rises, origin load falls, and the long tail of TTFB — misses that crossed an ocean to reach the origin — shrinks.",[15,33,34],{},[35,36,42,43,42,50,42,54,42,57,42,66,42,72,42,81,42,87,42,92,42,97,42,100,42,103,42,106,42,109,42,112,42,115,42,120,42,124,42,126,42,130,42,132,42,135,42,137,42,140,42,142,42],"svg",{"viewBox":37,"width":38,"role":39,"ariaLabel":40,"style":41},"0 0 760 228","100%","img","Comparison of a flat CDN where every edge PoP fetches from origin with a tiered CDN where edges fetch from a shield tier.","height:auto;max-width:760px;display:block;margin:1.75rem auto;font-family:inherit;color:var(--fp-svg-ink)"," ",[44,45],"rect",{"className":46,"x":48,"y":48,"width":38,"height":38,"fill":49},[47],"svg-canvas","0","#ffffff",[51,52,53],"title",{},"Flat vs tiered CDN topology",[55,56,40],"desc",{},[44,58],{"x":59,"y":59,"width":60,"height":61,"rx":62,"fill":63,"stroke":64,"style":65},"1","758","226","10","none","currentColor","stroke-opacity:0.18",[67,68,53],"text",{"x":69,"y":70,"fill":64,"style":71},"28.0","34.0","font-size:16px;font-weight:700",[44,73],{"x":69,"y":74,"width":75,"height":76,"rx":77,"fill":78,"stroke":79,"style":80},"56.0","340.0","150.0","6","#ffc300","#b8860b","fill-opacity:0.24;stroke-opacity:0.9",[67,82,86],{"x":83,"y":84,"fill":64,"style":85},"42.0","82.0","font-size:14px;font-weight:700","Flat",[67,88,91],{"x":83,"y":89,"fill":64,"style":90},"108.0","font-size:12.5px;font-weight:700","•",[67,93,96],{"x":74,"y":89,"fill":64,"style":94,"textAnchor":95},"font-size:12.5px","start","Each of 200 PoPs fetches from origin",[67,98,91],{"x":83,"y":99,"fill":64,"style":90},"132.0",[67,101,102],{"x":74,"y":99,"fill":64,"style":94,"textAnchor":95},"Low-traffic pages rarely cached anywhere",[67,104,91],{"x":83,"y":105,"fill":64,"style":90},"156.0",[67,107,108],{"x":74,"y":105,"fill":64,"style":94,"textAnchor":95},"Origin sees N x misses per object",[67,110,91],{"x":83,"y":111,"fill":64,"style":90},"180.0",[67,113,114],{"x":74,"y":111,"fill":64,"style":94,"textAnchor":95},"Distant PoPs pay full origin RTT",[44,116],{"x":117,"y":74,"width":75,"height":76,"rx":77,"fill":118,"stroke":118,"style":119},"392.0","#0466c8","fill-opacity:0.14;stroke-opacity:0.9",[67,121,123],{"x":122,"y":84,"fill":64,"style":85},"406.0","Tiered with shield",[67,125,91],{"x":122,"y":89,"fill":64,"style":90},[67,127,129],{"x":128,"y":89,"fill":64,"style":94,"textAnchor":95},"420.0","Edges fetch from a regional or shield tier",[67,131,91],{"x":122,"y":99,"fill":64,"style":90},[67,133,134],{"x":128,"y":99,"fill":64,"style":94,"textAnchor":95},"Shield holds the object for all edges",[67,136,91],{"x":122,"y":105,"fill":64,"style":90},[67,138,139],{"x":128,"y":105,"fill":64,"style":94,"textAnchor":95},"Origin sees ~1 fetch per object per TTL",[67,141,91],{"x":122,"y":111,"fill":64,"style":90},[67,143,144],{"x":128,"y":111,"fill":64,"style":94,"textAnchor":95},"Edge misses are served from nearby tier",[146,147,149],"h2",{"id":148},"rapid-diagnosis","Rapid Diagnosis",[151,152,153,161,167,173],"ul",{},[154,155,156,160],"li",{},[157,158,159],"strong",{},"Compare edge hit ratio with origin request volume."," If the edge hit ratio is decent but origin requests remain high, misses are spread across many PoPs.",[154,162,163,166],{},[157,164,165],{},"Segment TTFB by PoP or country."," Regions far from the origin with high TTFB tails suggest misses travelling the full distance.",[154,168,169,172],{},[157,170,171],{},"Look at low-traffic content."," Product pages, articles and images outside the top few hundred URLs usually have the lowest per-PoP hit rates.",[154,174,175,178],{},[157,176,177],{},"Check whether tiering is already enabled."," Many CDNs offer it as a toggle (Cloudflare Tiered Cache, CloudFront Origin Shield, Fastly shielding, Akamai tiered distribution).",[146,180,182],{"id":181},"root-cause-analysis","Root Cause Analysis",[15,184,185,188],{},[157,186,187],{},"1. Per-PoP caches are small worlds."," Each PoP sees only local traffic; objects requested infrequently locally expire before reuse.",[15,190,191,194],{},[157,192,193],{},"2. Origin RTT dominates misses."," A miss in Sydney for an origin in Virginia costs a cross-Pacific round trip plus connection setup.",[15,196,197,200],{},[157,198,199],{},"3. Thundering herds."," After a purge or a new deploy, many PoPs miss simultaneously and all hit the origin.",[15,202,203,206],{},[157,204,205],{},"4. Short TTLs amplify both."," With short TTLs, the per-PoP problem repeats more often.",[15,208,209],{},[35,210,42,213,42,216,42,219,42,221,42,224,42,226,42,233,42,240,42,245,42,249,42,254,42,258,42,261,42,265,42],{"viewBox":211,"width":38,"role":39,"ariaLabel":212,"style":41},"0 0 760 163","Bar chart of origin requests generated by one million page views of low-traffic content under flat, regional-tier and single-shield configurations.",[44,214],{"className":215,"x":48,"y":48,"width":38,"height":38,"fill":49},[47],[51,217,218],{},"Origin requests for 1M page views of low-traffic content",[55,220,212],{},[44,222],{"x":59,"y":59,"width":60,"height":223,"rx":62,"fill":63,"stroke":64,"style":65},"161",[67,225,218],{"x":69,"y":70,"fill":64,"style":71},[67,227,232],{"x":228,"y":229,"fill":64,"style":230,"textAnchor":231},"138.2","70.0","font-size:13px","end","Flat (no tiering)",[44,234],{"x":235,"y":74,"width":236,"height":237,"rx":238,"fill":78,"stroke":79,"style":239},"150.2","517.8","19","3","fill-opacity:0.7;stroke-opacity:0.9",[67,241,244],{"x":242,"y":229,"fill":64,"style":243},"674.0","font-size:12px;font-weight:600","410k",[67,246,248],{"x":228,"y":247,"fill":64,"style":230,"textAnchor":231},"101.0","Regional tiers",[44,250],{"x":235,"y":251,"width":252,"height":237,"rx":238,"fill":118,"stroke":118,"style":253},"87.0","151.5","fill-opacity:0.55;stroke-opacity:0.9",[67,255,257],{"x":256,"y":247,"fill":64,"style":243},"307.8","120k",[67,259,260],{"x":228,"y":99,"fill":64,"style":230,"textAnchor":231},"Single origin shield",[44,262],{"x":235,"y":263,"width":264,"height":237,"rx":238,"fill":118,"stroke":118,"style":253},"118.0","80.8",[67,266,268],{"x":267,"y":99,"fill":64,"style":243},"237.0","64k",[146,270,272],{"id":271},"step-by-step-resolution","Step-by-Step Resolution",[274,275,277],"h3",{"id":276},"_1-enable-tiering-on-your-cdn","1. Enable tiering on your CDN",[15,279,280],{},"Turn on the CDN's tiered caching feature and, where offered, choose a shield location close to your origin (for a single-region origin) or a smart topology that picks parents automatically.",[282,283,288],"pre",{"className":284,"code":285,"language":286,"meta":287,"style":287},"language-bash shiki shiki-themes github-light-high-contrast github-dark-high-contrast github-light-high-contrast","# CloudFront: enable Origin Shield on an origin (AWS CLI, abbreviated).\naws cloudfront update-distribution --id E123 --distribution-config file:\u002F\u002Fconfig.json\n# where config.json sets Origins.Items[0].OriginShield = { Enabled: true, OriginShieldRegion: \"us-east-1\" }\n# trade-off: shield requests add a hop for misses and are billed separately on\n# some CDNs. For small, single-region audiences the benefit may not cover the cost.\n","bash","",[289,290,291,300,327,333,339],"code",{"__ignoreMap":287},[292,293,296],"span",{"class":294,"line":295},"line",1,[292,297,299],{"class":298},"sjfSM","# CloudFront: enable Origin Shield on an origin (AWS CLI, abbreviated).\n",[292,301,303,307,311,314,318,321,324],{"class":294,"line":302},2,[292,304,306],{"class":305},"sQw3B","aws",[292,308,310],{"class":309},"sZ8jY"," cloudfront",[292,312,313],{"class":309}," update-distribution",[292,315,317],{"class":316},"sPXB4"," --id",[292,319,320],{"class":309}," E123",[292,322,323],{"class":316}," --distribution-config",[292,325,326],{"class":309}," file:\u002F\u002Fconfig.json\n",[292,328,330],{"class":294,"line":329},3,[292,331,332],{"class":298},"# where config.json sets Origins.Items[0].OriginShield = { Enabled: true, OriginShieldRegion: \"us-east-1\" }\n",[292,334,336],{"class":294,"line":335},4,[292,337,338],{"class":298},"# trade-off: shield requests add a hop for misses and are billed separately on\n",[292,340,342],{"class":294,"line":341},5,[292,343,344],{"class":298},"# some CDNs. For small, single-region audiences the benefit may not cover the cost.\n",[15,346,347],{},"Expected outcome: origin request volume falls sharply, especially for low-traffic URLs.",[274,349,351],{"id":350},"_2-choose-the-shield-location-deliberately","2. Choose the shield location deliberately",[15,353,354],{},"Place the shield in the same region as the origin, so shield-to-origin fetches are short. For multi-region origins, use regional tiers that map to the nearest origin.",[274,356,358],{"id":357},"_3-lengthen-ttls-where-freshness-allows-with-revalidation","3. Lengthen TTLs where freshness allows, with revalidation",[15,360,361,362,365,366,369,370,374],{},"Tiering helps most when objects live long enough to be reused. Use ",[289,363,364],{},"s-maxage"," for the CDN with ",[289,367,368],{},"stale-while-revalidate"," so tiers serve stale content while refreshing — see ",[19,371,373],{"href":372},"\u002Fadvanced-caching-strategies-cdn-architecture\u002Fstale-while-revalidate-implementation\u002F","stale-while-revalidate implementation",".",[274,376,378],{"id":377},"_4-enable-request-collapsing","4. Enable request collapsing",[15,380,381],{},"Make sure the CDN collapses concurrent misses for the same object into one upstream request (most do by default at the shield). This prevents thundering herds after purges.",[15,383,384],{},[35,385,42,388,42,391,42,394,42,396,42,399,42,401,42,404,42,410,42,414,42,421,42,425,42,428,42,431,42,436,42,442,42,448,42,452,42,456,42,460,42,464,42,468,42,472,42,476,42],{"viewBox":386,"width":38,"role":39,"ariaLabel":387,"style":41},"0 0 760 204","Timelines comparing a cache miss served from a Virginia origin directly and from an Asia-Pacific regional tier.",[44,389],{"className":390,"x":48,"y":48,"width":38,"height":38,"fill":49},[47],[51,392,393],{},"A Sydney miss with and without a shield",[55,395,387],{},[44,397],{"x":59,"y":59,"width":60,"height":398,"rx":62,"fill":63,"stroke":64,"style":65},"202",[67,400,393],{"x":69,"y":70,"fill":64,"style":71},[67,402,86],{"x":69,"y":403,"fill":64,"style":90},"74.0",[44,405],{"x":406,"y":74,"width":407,"height":408,"rx":238,"fill":64,"stroke":64,"style":409},"81.6","16.9","26.0","fill-opacity:0.06;stroke-opacity:0.4",[44,411],{"x":412,"y":74,"width":413,"height":408,"rx":238,"fill":78,"stroke":79,"style":80},"100.1","551.5",[67,415,420],{"x":416,"y":417,"fill":64,"style":418,"textAnchor":419},"375.8","73.5","font-size:11.5px","middle","Sydney edge → Virginia origin",[67,422,424],{"x":69,"y":423,"fill":64,"style":90},"112.0","Tiered",[44,426],{"x":406,"y":427,"width":407,"height":408,"rx":238,"fill":64,"stroke":64,"style":409},"94.0",[44,429],{"x":412,"y":427,"width":430,"height":408,"rx":238,"fill":118,"stroke":118,"style":119},"109.1",[67,432,435],{"x":433,"y":434,"fill":64,"style":418,"textAnchor":419},"154.6","111.5","regional tier hit",[294,437],{"x1":438,"y1":439,"x2":440,"y2":439,"stroke":64,"style":441},"80.9","134.0","726.0","stroke-opacity:0.4",[67,443,447],{"x":444,"y":445,"fill":446,"style":418,"textAnchor":419},"91.6","151.0","#51617a","0ms",[67,449,451],{"x":450,"y":445,"fill":446,"style":418,"textAnchor":419},"173.0","100ms",[67,453,455],{"x":454,"y":445,"fill":446,"style":418,"textAnchor":419},"265.2","200ms",[67,457,459],{"x":458,"y":445,"fill":446,"style":418,"textAnchor":419},"357.4","300ms",[67,461,463],{"x":462,"y":445,"fill":446,"style":418,"textAnchor":419},"449.5","400ms",[67,465,467],{"x":466,"y":445,"fill":446,"style":418,"textAnchor":419},"541.7","500ms",[67,469,471],{"x":470,"y":445,"fill":446,"style":418,"textAnchor":419},"633.8","600ms",[67,473,475],{"x":474,"y":445,"fill":446,"style":418,"textAnchor":419},"715.3","700ms",[67,477,479],{"x":69,"y":478,"fill":446,"style":94},"182.0","With a warm regional tier, an edge miss is served from within the region instead of crossing to the origin.",[146,481,483],{"id":482},"verification","Verification",[15,485,486],{},"Compare origin request rates before and after enabling tiering, normalised for traffic. Check CDN analytics for the share of edge misses served by the tier. In RUM, segment TTFB p75 and p95 by region: distant regions should improve the most. After a purge, origin request spikes should be much smaller.",[146,488,490],{"id":489},"worked-example-a-global-documentation-site","Worked Example: A Global Documentation Site",[15,492,493],{},"A documentation site with a single origin in Frankfurt served 40,000 pages; most received only a few hundred views per day spread across 150 PoPs. The edge hit ratio was 61%, but TTFB p95 in Asia-Pacific and South America exceeded 1.4s because misses went to Frankfurt. Enabling tiered caching with an upper tier near the origin and regional tiers raised the effective hit ratio to 93%, cut origin requests by 82%, and brought TTFB p95 in distant regions under 400ms.",[146,495,497],{"id":496},"common-mistakes","Common Mistakes",[151,499,500,506,512,518],{},[154,501,502,505],{},[157,503,504],{},"Placing the shield far from the origin."," The shield-to-origin hop should be short.",[154,507,508,511],{},[157,509,510],{},"Expecting tiering to fix uncacheable content."," It only helps objects that are cacheable in the first place.",[154,513,514,517],{},[157,515,516],{},"Ignoring cost."," Some CDNs bill tier-to-tier traffic; check pricing for high-volume media.",[154,519,520,523],{},[157,521,522],{},"Short TTLs everywhere."," Tiering cannot help objects that expire before they are reused.",[146,525,527],{"id":526},"edge-cases","Edge Cases",[15,529,530,533],{},[157,531,532],{},"Personalised or edge-computed responses."," Responses generated per request at the edge do not benefit from tiers; cache the shared parts instead.",[15,535,536,539],{},[157,537,538],{},"Large media."," Video segments and large downloads benefit enormously from shielding; make sure range requests are cached correctly.",[15,541,542,545],{},[157,543,544],{},"Multi-CDN setups."," With two CDNs in front of one origin, each has its own tiers; a shared origin cache layer (your own reverse proxy) can act as a common shield.",[15,547,548,551],{},[157,549,550],{},"Purge propagation."," Purges must clear tiers as well as edges; tag-based purge on modern CDNs handles both.",[146,553,555],{"id":554},"faq","FAQ",[557,558,561,565],"details",{"className":559},[560],"faq-item",[562,563,564],"summary",{},"Does tiered caching increase latency for hits?",[15,566,567],{},"No — edge hits are served from the edge as before. Tiering only changes the path for edge misses, which become tier hits most of the time.",[557,569,571,574],{"className":570},[560],[562,572,573],{},"Is an origin shield the same as a reverse proxy cache at the origin?",[15,575,576],{},"Functionally similar — both aggregate misses — but a CDN shield sits inside the CDN's network, closer to edges, and benefits from its backbone. A reverse proxy at the origin also reduces application load and can complement a shield.",[557,578,580,583],{"className":579},[560],[562,581,582],{},"Should every site enable tiering?",[15,584,585],{},"Most sites with a global audience and more than a handful of pages benefit. Small sites with regional audiences and very popular content may see little change; measure origin requests before and after.",[557,587,589,592],{"className":588},[560],[562,590,591],{},"How does tiering interact with stale-while-revalidate?",[15,593,594],{},"They reinforce each other: tiers keep objects warm, and SWR lets them serve stale copies while one background request refreshes, so even refreshes rarely reach the origin concurrently.",[557,596,598,601],{"className":597},[560],[562,599,600],{},"Does tiering help Core Web Vitals directly?",[15,602,603],{},"Through TTFB: fewer and shorter miss paths lower TTFB p75 and especially p95, which feeds directly into LCP for server-rendered pages.",[557,605,607,610],{"className":606},[560],[562,608,609],{},"How do I know which tier served a response?",[15,611,612],{},"Most CDNs expose it in headers when tiering is on — for example, separate cache status values per layer, or a header naming the upper-tier location. Add the relevant value to Server-Timing in staging to see the path each request took, and compare latency for edge hits, tier hits and origin fetches.",[557,614,616,619],{"className":615},[560],[562,617,618],{},"Does tiering change purge behaviour?",[15,620,621],{},"Purges must clear every tier, which modern CDNs do automatically for URL and tag purges. After a purge, the first request per region refills the regional tier from the shield or origin, so origin load after a purge is bounded by the number of tiers rather than the number of edge locations.",[146,623,625],{"id":624},"related","Related",[151,627,628,635,642],{},[154,629,630,634],{},[19,631,633],{"href":632},"\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Fnormalizing-cache-keys-to-raise-hit-rate\u002F","Normalizing cache keys to raise hit rate"," — the first lever for hit rate.",[154,636,637,641],{},[19,638,640],{"href":639},"\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Fconfiguring-stale-if-error-for-origin-outages\u002F","Configuring stale-if-error for origin outages"," — resilience that pairs with shielding.",[154,643,644,648],{},[19,645,647],{"href":646},"\u002Fnetwork-protocol-optimization\u002Ftime-to-first-byte-optimization\u002F","Time to First Byte (TTFB) optimization"," — the metric tiering improves.",[650,651,653],"script",{"type":652},"application\u002Fld+json","\n{\n  \"@context\": \"https:\u002F\u002Fschema.org\",\n  \"@type\": \"HowTo\",\n  \"name\": \"How Tiered Caching and an Origin Shield Raise Hit Rates\",\n  \"description\": \"How tiered caching and origin shields reduce origin fetches, raise effective hit rates for low-traffic content, and protect the origin during spikes.\",\n  \"step\": [\n    {\n      \"@type\": \"HowToStep\",\n      \"position\": 1,\n      \"name\": \"Enable tiering on your CDN\",\n      \"text\": \"Turn on the CDN's tiered caching feature and, where offered, choose a shield location close to your origin (for a single-region origin) or a smart topology that picks parents automatically.\"\n    },\n    {\n      \"@type\": \"HowToStep\",\n      \"position\": 2,\n      \"name\": \"Choose the shield location deliberately\",\n      \"text\": \"Place the shield in the same region as the origin, so shield-to-origin fetches are short.\"\n    },\n    {\n      \"@type\": \"HowToStep\",\n      \"position\": 3,\n      \"name\": \"Lengthen TTLs where freshness allows, with revalidation\",\n      \"text\": \"Tiering helps most when objects live long enough to be reused.\"\n    },\n    {\n      \"@type\": \"HowToStep\",\n      \"position\": 4,\n      \"name\": \"Enable request collapsing\",\n      \"text\": \"Make sure the CDN collapses concurrent misses for the same object into one upstream request (most do by default at the shield).\"\n    }\n  ]\n}\n",[650,655,656],{"type":652},"\n{\n  \"@context\": \"https:\u002F\u002Fschema.org\",\n  \"@type\": \"TechArticle\",\n  \"headline\": \"How Tiered Caching and an Origin Shield Raise Hit Rates\",\n  \"description\": \"How tiered caching and origin shields reduce origin fetches, raise effective hit rates for low-traffic content, and protect the origin during spikes.\",\n  \"datePublished\": \"2026-10-06\",\n  \"dateModified\": \"2026-10-06\",\n  \"author\": {\n    \"@type\": \"Organization\",\n    \"name\": \"frontend-performance.com\"\n  },\n  \"publisher\": {\n    \"@type\": \"Organization\",\n    \"name\": \"frontend-performance.com\"\n  },\n  \"mainEntityOfPage\": {\n    \"@type\": \"WebPage\",\n    \"@id\": \"https:\u002F\u002Ffrontend-performance.com\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Ftiered-caching-and-origin-shield\u002F\"\n  }\n}\n",[650,658,659],{"type":652},"\n{\n  \"@context\": \"https:\u002F\u002Fschema.org\",\n  \"@type\": \"BreadcrumbList\",\n  \"itemListElement\": [\n    {\n      \"@type\": \"ListItem\",\n      \"position\": 1,\n      \"name\": \"Home\",\n      \"item\": \"https:\u002F\u002Ffrontend-performance.com\u002F\"\n    },\n    {\n      \"@type\": \"ListItem\",\n      \"position\": 2,\n      \"name\": \"Advanced Caching Strategies & CDN Architecture\",\n      \"item\": \"https:\u002F\u002Ffrontend-performance.com\u002Fadvanced-caching-strategies-cdn-architecture\u002F\"\n    },\n    {\n      \"@type\": \"ListItem\",\n      \"position\": 3,\n      \"name\": \"CDN Edge Caching Configuration\",\n      \"item\": \"https:\u002F\u002Ffrontend-performance.com\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002F\"\n    },\n    {\n      \"@type\": \"ListItem\",\n      \"position\": 4,\n      \"name\": \"Tiered Caching and Origin Shield\",\n      \"item\": \"https:\u002F\u002Ffrontend-performance.com\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Ftiered-caching-and-origin-shield\u002F\"\n    }\n  ]\n}\n",[661,662,663],"style",{},"html pre.shiki code .sjfSM, html code.shiki .sjfSM{--shiki-default:#66707B;--shiki-dark:#BDC4CC;--shiki-light:#66707B}html pre.shiki code .sQw3B, html code.shiki .sQw3B{--shiki-default:#702C00;--shiki-dark:#FFB757;--shiki-light:#702C00}html pre.shiki code .sZ8jY, html code.shiki .sZ8jY{--shiki-default:#032563;--shiki-dark:#ADDCFF;--shiki-light:#032563}html pre.shiki code .sPXB4, html code.shiki .sPXB4{--shiki-default:#023B95;--shiki-dark:#91CBFF;--shiki-light:#023B95}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}",{"title":287,"searchDepth":302,"depth":302,"links":665},[666,667,668,674,675,676,677,678,679],{"id":148,"depth":302,"text":149},{"id":181,"depth":302,"text":182},{"id":271,"depth":302,"text":272,"children":669},[670,671,672,673],{"id":276,"depth":329,"text":277},{"id":350,"depth":329,"text":351},{"id":357,"depth":329,"text":358},{"id":377,"depth":329,"text":378},{"id":482,"depth":302,"text":483},{"id":489,"depth":302,"text":490},{"id":496,"depth":302,"text":497},{"id":526,"depth":302,"text":527},{"id":554,"depth":302,"text":555},{"id":624,"depth":302,"text":625},"How tiered caching and origin shields reduce origin fetches, raise effective hit rates for low-traffic content, and protect the origin during spikes.","md",{"slug":683,"type":684,"breadcrumb":685,"datePublished":693,"dateModified":693},"tiered-caching-and-origin-shield","article",[686,689,690,691],{"name":687,"url":688},"Home","\u002F",{"name":27,"url":26},{"name":22,"url":21},{"name":5,"url":692},"\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Ftiered-caching-and-origin-shield\u002F","2026-10-06",true,"\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Ftiered-caching-and-origin-shield",{"title":697,"description":698},"Tiered Caching and Origin Shield for Higher Hit Rates","Route edge misses through a regional or shield cache tier so popular content is fetched from origin once, not once per PoP — raising hit rate and cutting TTFB tails.","advanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Ftiered-caching-and-origin-shield\u002Findex","gIfgt8ff0bfF02rEpo7cbq7O7LvgNqit4nGZx5KfRl4",[702,706],{"title":703,"path":704,"stem":705},"Normalizing Cache Keys to Raise Hit Rate","\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Fnormalizing-cache-keys-to-raise-hit-rate","advanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Fnormalizing-cache-keys-to-raise-hit-rate\u002Findex",{"title":707,"path":708,"stem":709},"Vary Header Pitfalls That Destroy CDN Hit Rate","\u002Fadvanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Fvary-header-pitfalls-that-destroy-cdn-hit-rate","advanced-caching-strategies-cdn-architecture\u002Fcdn-edge-caching-configuration\u002Fvary-header-pitfalls-that-destroy-cdn-hit-rate\u002Findex",1791308079581]