0 Shares 9818 Views

How to Measure Your CDN’s Cache Hit Ratio and Increase Cache Hits

What happens when a user on your web app initiates a web request?

The request needs to travel from the client to the origin server that hosts the web app via a 

protocol. To do this, the request becomes fragmented and encapsulated into data packets, and is then sent out across the internet’s backbone — a network of cables. Now suppose that the user who initiated the request is in India and the origin server is located in Canada. The request will need to traverse thousands of switches, routers, and data centers along parallel ISP routes, traveling tens of thousands of kilometers. When the server responds, it must go via the same path and protocol to the client. Signals, therefore, have to traverse such vast distances twice in order to provide a complete response. There will also be server-side delays due to load.

This is a big reason for network latency today and it is a big no-no for websites and web applications that want to be competitive. Even a few seconds of latency might result in a bad user experience and lead to user churn.  

To address this challenge, Content Delivery Networks (CDNs) have risen in massive popularity, and have completely transformed modern information delivery. Today, most leading service providers use CDNs to deliver content to their users. A CDN does this via multiple improvements over a single-server setup: by optimizing file storage, deploying better hardware to store and process requests, and most importantly, using cache storage. This leads us to our essential question.

Why is Caching an Important Strategy for CDNs?

Caching is the process by which a file gets stored in a temporary storage location. CDN servers cache HTML scripts, JavaScript, and images from the origin servers in proxy servers to reduce latency.  

The speed of content delivery is a critical parameter for web applications. When the browser (user) requests information from a website through a CDN service for the first time, the CDN delivers the content by connecting to the origin server and then caching the content — essentially saving the content in the nearest data center to the user. So, when users request the content in the future, the content is served from the cache, which makes the whole process of content delivery faster. 

After a TCP handshake is made, the client machine will make an HTTP request to the CDN. In case the content has not yet been cached, the CDN will make the request to the origin server, and then download the content from the origin. This results in an additional request between the origin server and the CDN’s edge server.

This is what happens during CDN caching:

  1. When the user requests a webpage, the user’s request is routed to the CDN’s nearest edge server.
  2. The edge server then delivers the content back from the cached content. 
  3. In case the content is not available in its cache, a request is made to the origin server for the content that the user requested.
  4. The origin server responds to the edge server’s request. 
  5. Finally, the edge server responds to the client. And then it caches the response for future requests.

What is a Cache Hit Ratio?

A CDN’s performance in delivering a piece of the requested content is measured by the average memory access time — the less, the better. This, in turn, depends mainly upon how readily available the content is (i.e. how close it is to the user). The successful access of the requested piece of data in the CDN’s cache memory is referred to as a hit. If a browser requests a piece of content and the CDN has it cached, then it will deliver that content. 

This is referred to as a cache hit. However, if the content is not available, then the CDN makes the request to the origin server. This is classified as a cache miss. Because the requested content is not available in the cache, the CDN will connect with the origin server in order to respond to the request. This leads to a delay in the delivery of the requested content.

Hit ratio = successful hits / total requests

A CDN provides cache storage. Cache hit ratio measures how many content requests a cache can deliver successfully from its cache storage, compared to how many requests it receives. A high-performing CDN will have a high cache hit ratio.

A cache hit ratio is an important metric that applies to any cache and is not only limited to a CDN. However, this is a vital metric for a CDN. For dynamic websites, where content changes frequently, the cache hit ratio will be slightly lower compared to static websites. However, modern CDNs can perform dynamic caching as well. A reputable CDN service provider should provide their cache hit scores in their performance reports.

In a nutshell, high cache hit ratios result in faster web apps, while low cache hit ratios result in slower web apps. This increases the stress on the origin server, as well as increased latency and dropped connections.

Caching is an integral part of what a CDN does. 

How to Increase Cache Hit Ratio?

  1. Optimise cache-control headers: The Cache-Control header field specifies directives for caching mechanisms in cases of requests and responses. These headers are used to set properties, such as the maximum age of an object, expiration time, or whether or not an object is to be cached at all. Depending upon how frequently your content changes, you need to specify this property. Optimising these property values can help improve the number of cache hits on your CDN. 
  2. Ignore cookies: Cookies tend to be un-cacheable, hence the files that contain them are also un-cacheable. Therefore, it’s important that you set rules. For example,  ignore all cookies in requests for assets that you want to be delivered by your CDN. 
  3. Ignore query strings: Query strings are useful in multiple ways: they help interact with web applications and APIs, aggregate user metrics and provide information for objects. The problem arises when query strings are included in static object URLs. In this case, the CDN mistakes them to be unique objects and will direct the request to the origin server. Accordingly, each request will be classified as a cache miss, even though the requested content was available in the CDN cache. This leads to an unnecessarily lower cache hit ratio. 

A well-implemented CDN cache will optimise your infrastructure costs, effectively distribute resources, and deliver maximum speed with minimum latency.

At Medianova, we provide global CDN solutions in streaming, encoding, caching, micro caching, hybrid CDN, and website acceleration. We have delivered and managed CDNs for leading enterprises and our state-of-art solutions are benchmarked against industry-leading quality parameters. 

Get in touch with us to learn more about how Medianova can build and manage an optimized and dedicated CDN for you.

free assessment


You may be interested

The Ultimate CDN (Content Delivery Network) Guide
CDN
5799 views
CDN
5799 views

The Ultimate CDN (Content Delivery Network) Guide

Nadia Benslimane - August 3, 2020

The Ultimate CDN Guide- Everything About Content Delivery Network You probably know what CDN (Content Delivery Network) stands for. You may also be aware of its full definition,…

The Essential CDN Glossary
CDN
9944 views
CDN
9944 views

The Essential CDN Glossary

Nadia Benslimane - November 21, 2019

Why Have We Decided To Create a CDN Glossary? Whether you are new to the world of CDN, or have been involved in it for years, there…

The Benefits of CDN for the Gaming Industry
CDN
1249 views
CDN
1249 views

The Benefits of CDN for the Gaming Industry

alikayikci - December 3, 2021

The Benefits of CDN for the Gaming Industry The gaming industry has witnessed a phenomenal growth in the last few years. The global nine gaming market only…

HTTP Live Streaming
CDN
581 views
CDN
581 views

HTTP Live Streaming

medianova - November 1, 2021

Introduction To HTTP Live Streaming What Is HTTP Live Streaming (HLS)? HLS (HTTP live streaming) is one of the most widely used video streaming protocols. Although live…

All You Need to Know About Round-Trip Time
CDN
651 views
CDN
651 views

All You Need to Know About Round-Trip Time

Gizay Yalçın - October 20, 2021

What exactly is RTT?  Round-trip time (RTT) is a networking metric that measures in milliseconds the time it takes for a data packet to be sent and…

Most from this category

The Ultimate CDN (Content Delivery Network) Guide
CDN
5799 views
5799 views

The Ultimate CDN (Content Delivery Network) Guide

Nadia Benslimane - August 3, 2020
The Essential CDN Glossary
CDN
9944 views
9944 views

The Essential CDN Glossary

Nadia Benslimane - November 21, 2019
SD-WAN in CDNs
CDN
417 views
417 views

SD-WAN in CDNs

Gizay Yalçın - October 20, 2021
Health Check Backup Origin
CDN
399 views
399 views

Health Check Backup Origin

Nilgün Ünsal - October 17, 2021
DDoS Attack Trends in 2021
CDN
696 views
696 views

DDoS Attack Trends in 2021

Elif Ak - October 17, 2021
Web Application Firewall
Uncategorized
173 views
173 views

Web Application Firewall

Aykut Teker - September 30, 2021