Getting CF-Cache-Status: MISS

Hello Cloudflare Community,

I’m trying to understand as to why I get CF-Cache-Status: MISS, when I have already done the following:

  1. Changed namerserver to CF and using proxy + CF CDN (orange cloud).
  2. ‘Always Online™’ turned ON
  3. Set Browser Cache TTL to 1 month
  4. Using this rule for mydomain.com/* : Cache Level: Cache Everything, Edge Cache TTL: a month

Now I get the HIT status if I browse a page from my IP after already requesting the page once, but I get the MISS status on first request of the site/page.

Am I doing something wrong or is this the way Cloudflare’s CDN cache functions? I just want the CF-Cache-Status to be a HIT everytime no matter, if I access the page today or 10 days from now using a different browser.

Is this possible? Please let me know. I want to achieve this as I see quite a difference in page load time, when I get a MISS status.

Thanks

Cloudflare is a Pull CDN. The first request through that edge server will be a MISS, and then it will stay in the cache for a limited amount of time. Rarely used files will be evicted from the cache early.

1 Like

Ok, here are my follow-up questions:

  1. Pull CDN: So if someone accesses a page for the first time from their laptop, it will be not be served from cache and it will be served from cache the second time? And will it be served from cache if that same user accesses that same page from a different connection, device and/or browser?

  2. Is there a defined ‘limited amount of time’?

  3. Say, if 50 people in a day, access a page from Dallas location will all of them get uncached version of the page on the first load of page on their device/connection?

After the initial request, Cloudflare will start fetching the resource and filling its cache behind the scenes. Future requests will then be served from Cloudflare’s cache. It’s generally not bound to a device/browser or connection, but I don’t exactly know if Cloudflare stores the cache locally in a datacenter or distributes it globally.

if 50 people in a day, access a page from Dallas location will all of them get uncached version of the page on the first load of page

If edge cache is empty, the requests have to be simultaneous for this to happen. If they are sequential, no, your origin won’t be hit (granted Cloudflare finished retrieving the original resource into its cache before following requests arrive). After initial request from any of your users, cache will fill up and subsequent requests from your users will be fed from the cache.

2 Likes