Skip to content

Commit a22dc83

Browse files
committed
Add cdn-edge-caching-cache-keys-vary-headers article
1 parent 5ac47ca commit a22dc83

8 files changed

Lines changed: 1305 additions & 739 deletions

File tree

.vscode/settings.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@
128128
"Qualys",
129129
"redigo",
130130
"registrator",
131+
"Rego",
131132
"repost",
132133
"reposts",
133134
"RGAA",
@@ -151,6 +152,8 @@
151152
"srgb",
152153
"startdt",
153154
"tanabata",
155+
"tflint",
156+
"tfsec",
154157
"TIMESTAMPTZ",
155158
"tktco",
156159
"Trino",
@@ -164,6 +167,7 @@
164167
"Tursa",
165168
"Turso",
166169
"tydata",
170+
"uncacheable",
167171
"unsampled",
168172
"unspaced",
169173
"unstub",

COVERS.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,3 +201,25 @@ Create a split-screen image. Left side shows blue/green: a tightrope walker with
201201
### Prompt 5: The Decision Tree
202202

203203
Design an image of an elegant decision tree where a path forks based on questions (traffic control available? instant rollback needed? observability mature?). Different paths lead to different deployment strategy icons. The tree grows from "requirements" soil into "strategy" branches. Style: botanical illustration meets flowchart, organic shapes with technical elements, earth and sky tones, 16:9 aspect ratio.
204+
205+
## cdn-edge-caching-cache-keys-vary-headers
206+
207+
### Prompt 1: The Edge Network Globe
208+
209+
Create an image of a stylized globe with glowing edge nodes (PoPs) distributed across continents. Lines connect users to their nearest edge, with some paths showing "HIT" indicators (fast, glowing) and others showing "MISS" indicators (path continues to central origin). Style: technical network visualization, dark background with neon highlights, blue and cyan color scheme, 16:9 aspect ratio.
210+
211+
### Prompt 2: The Cache Key Anatomy
212+
213+
Design a visualization of a cache key being constructed from its components. Show URL parts (scheme, host, path, query) assembling like puzzle pieces, with some components (cookies, user-agent) being filtered out. The assembled key unlocks a cache vault. Style: technical diagram meets lock/key metaphor, clean lines, warm metal tones for key, cool tones for components, 16:9 aspect ratio.
214+
215+
### Prompt 3: The Vary Header Explosion
216+
217+
Illustrate the combinatorial explosion of cache variants. A single cached response at the top branches into multiple variants based on Accept-Encoding × Accept-Language × Device-Type, showing exponential growth. Some branches are pruned (good), others grow wild (bad). Style: tree/branching diagram, organic growth pattern, green (good) vs red (problematic) branches, 16:9 aspect ratio.
218+
219+
### Prompt 4: The Invalidation Wave
220+
221+
Create an image showing a "purge wave" propagating across a network of edge nodes. The origin sends a signal that ripples outward, each edge node updating as the wave passes. Some nodes update immediately, others lag slightly. Style: ripple effect visualization, concentric circles emanating from center, gradient from fresh (bright) to stale (dim), 16:9 aspect ratio.
222+
223+
### Prompt 5: The Correctness vs Performance Balance
224+
225+
Design a balance scale where one side holds "Performance" (represented by speed/lightning icons, high CHR numbers) and the other holds "Correctness" (represented by checkmarks, security shields). The scale is balanced but precarious. Below the scale, "cache misconfiguration" tips it dangerously toward performance. Style: classical balance scale with modern tech iconography, warning colors where imbalanced, 16:9 aspect ratio.

_TODO.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,7 @@ To overlay an article title and published date on a cover image, use CSS positio
189189
- Mathjax not working on inline formulas: "Where $L$ is the average number of items in the system (queue depth), $\lambda$ is the arrival rate (requests per second), and $W$ is the average time in system (latency)." In src/content/articles/backpressure-load-shedding-admission-control-overload/index.mdx
190190
- Uppy, Tus server, whatever other server needed
191191
- Need a Q & A format to use in blameless-postmortem-incident-analysis-systemic-causes
192+
- Numbering for ordered lists breaks when there are code blocks in between numbered list elements, like in src/content/articles/cdn-edge-caching-cache-keys-vary-headers/index.mdx
192193

193194
## Reading position indicator
194195

@@ -240,6 +241,10 @@ High Resolution: Seedream 4.0 is capable of generating native high-resolution im
240241

241242
Complex Text and Instruction Following: The model demonstrates an enhanced understanding of complex semantic prompts and excels in rendering dense and accurate text within the generated images, a common weakness in other AI image models.
242243

244+
## Content Issues
245+
246+
- "### Geographic/Currency Mismatches" in src/content/articles/cdn-edge-caching-cache-keys-vary-headers/index.mdx
247+
243248
## Content Instructions
244249

245250
Let's write our next article. Review ./CONTENT.md for the goals and voice to use in our website. Each article outline includes various components we use on our site that can be incorporated into the final article but do not have to be included if they don't fit into the content well or are excessive.
@@ -262,7 +267,7 @@ some config
262267
\`\`\`
263268
```
264269

265-
For code examples like YAML config, use a concrete tool context so readers can understand where they would deploy or use the code. A single comment line or reference to the tool, or a descriptive file name, is sufficient. Prefer showing usage for AWS but a small amount of variety showing open source tools is the optimal case. So, for example, if there were four config examples, three might apply to AWS and one to an alternative tool. Do not include multiple tables, code blocks, or mermaid diagrams in a row without text between them to break them up.
270+
For code examples like YAML config, use a concrete tool context so readers can understand where they would deploy or use the code. A single comment line or reference to the tool, or a descriptive file name, is sufficient. Prefer showing usage for AWS but a small amount of variety showing open source tools is the optimal case. So, for example, if there were four config examples, three might apply to AWS and one to an alternative tool. Do not include multiple tables, code blocks, or mermaid diagrams in a row without text between them to break them up. Do not import the Callout component, it is automatic.
266271

267272
__review__
268273

0 commit comments

Comments
 (0)