Introduction to Prefetch
CDN Prefetching is warming the CDN cache for the purpose of speeding up content delivery for those first users who would otherwise get a slow 'cache miss' response, because the CDN first needs to fetch the file from the origin server. Another benefit of CDN Prefetching is origin offload: the origin gets less requests and consequently it's less likely your origin server and/or network will fall over or become really slow.
Prefetching is especially beneficial if you use the CDN to deliver large files and you expect new content (for example a new software download) to be requested by many users at the same time directly after publishing and you don't have Origin Shield enabled on your CDN or your CDN does not do request collapsing.
CDNs and Prefetch
Edgio has a 'Load to Edge' feature, including an API, but most CDNs do not provide a way to have the caches prefetch content from origin.
The table below shows which CDNs provide prefetching functionality and if that is free, instant, global and possible via API.
Available
Does the CDN provide the prefetch feature? Is prefetching free or do you pay for using the feature (e.g. pay X for every 1000 prefetch requests)? Does the CDN charge for ingress data transfer (origin to CDN)?
Instant
Does the prefetching start instantly or is there a (significant) delay?
API
Does the CDN provide an API for loading content to their edge servers?
All POPs
When prefetching, is the content loaded to all POPs?
CDN comparison
CDN | AvailableCDN provides prefetching? Free or a paid add-on? | InstantPrefetching happens directly after initiation | APIAPI available to prefetch content to edge servers | All POPsIs the content loaded to all POPs? |
---|---|---|---|---|
AdvancedHosting
|
||||
Akamai
|
||||
BelugaCDN | ||||
Bunny CDN | ||||
CacheFly | ||||
CDN77
|
||||
CDNetworks
|
||||
CDNvideo | ||||
Cloudflare | ||||
CloudFront | ||||
EdgeNext
|
||||
Edgio
|
||||
Fastly | ||||
Gcore
|
||||
Imperva | ||||
Kingsoft Cloud
|
||||
Leaseweb | ||||
Lumen | ||||
StackPath | ||||
Tata Communications | ||||
Tencent Cloud
|
More info per CDN
AdvancedHosting
Prefetched content is loaded by all POPs. VideoCDN does not have a prefetch option, but content requested by a client at one POP is typically distributed immediately to other POPs too.
Akamai
Akamai does not a way to prewarm the cache with specific files, but the following two (old) community articles contain useful info: Content Pre-loading / pre-warming at Akamai. Media Content Pre-loading / pre-warming at Akamai. Furthermore, know that Akamai has pretching optimizations built-in for large file delivery and streaming media. Read the Prefetching article on the Akamai Developer site.
CDN77
There is a limit of 2000 URLs per request and 60 requests per 5 minutes for each customer account in both Purge and Prefetch. How can I Purge or Prefetch files?
CDNetworks
CDNetworks provides interface on the webpage and API interface, where the prefetch command will be sent to CDNetworks edge PoP by submitting prefetch URL on the webpage or through API interface. Additional cost may be applied if the number of items to be prefetched excesses 20,000 or 200G. Documentation
EdgeNext
Prefetch is available via the UI and API and available to all customers at no extra costs. On request, EdgeNext can enable 'background cache fill'.
Edgio
Content may be loaded to the entire network or solely to specific regions. Loading by region provides the means through which cache optimization may be targeted to regions where demand is highest. Regions are North America, US East, US Central, US West, Europe, Asia, South America. The default limit is 50 concurrent load requests at any given time. API is available. The Prefetch usually starts ~ 5 minutes after submitting the request.
Gcore
More info in their How to Prefetch Files article.
Kingsoft Cloud
Prefetch is available via the UI and API and available to all customers at no extra costs (Limitation: max 100 requests per day). On request, Kingsoft Cloud can enable 'background cache fill'.
Tencent Cloud
Prefetch is available via the UI and API and available to all customers at no extra costs. Without prefetch, Tencent Cloud CDN does 'background cache fill': when receiving a range request for a file that is not fully in cache, in addition to fetching and serving the range response the CDN will also fetch and store the complete file in the cache to satisfy next range requests. More info about prefetching is availaible at Prefetch Cache.