Push CDNs
Hop is about to release a 90 MB desktop app. Thousands of people will download it in the first hour. With a pull CDN, every edge would miss at the same moment and hammer the origin for the same big file. For content you know about in advance, there is another way: put it on the CDN before anyone asks.
The rule
You place the copies ahead of time; the edge never has to ask.
With a push CDN, you upload content to the CDN's storage yourself — usually from a build or release step — and it stays until you replace or delete it. There is no first-request miss and no cache time to wait out: the content changes exactly when you push a new version.
Push compared with pull:
| Push | Pull | |
|---|---|---|
| Who fills the edge | You, ahead of time | The edge, on a miss |
| First request | Already fast | Slow at each edge |
| Effort | You upload and update | Almost none |
| Storage | Everything you pushed | Only what is requested |
| Changes | Exactly when you push | When cached copies expire, or with new names |
Push suits sites with little traffic or content that rarely changes, and large planned releases: installers, videos for a launch, a small static site.
Pull suits busy sites where the popular set is large and keeps changing, because the edges automatically keep what people actually request.
The shortcut
Ask two questions: "Do I know the files in advance?" and "Are most of them going to be requested?" Two yeses → push. Otherwise → pull.
The desktop installer
Known in advance, one big file, downloaded by nearly everyone who visits the page. Two yeses → push it before the release.
The trap is pushing everything "to be fast". You then pay to store and update millions of files nobody requests, and must remember to delete each one yourself.
Drills
Answer fast — trust the rule.
In a push CDN, when does content arrive at the CDN?
Which is a genuine advantage of push over pull?
Which content is the best fit for a push CDN?
A busy news site publishes hundreds of new images an hour. Which CDN type fits better?
Remember
- Push: you place the copies ahead of time; the edge never has to ask.
- Shortcut: known in advance and mostly requested → push; otherwise pull.
- Trap: pushing everything and paying to store and manage files nobody asks for.
