Everything you need to know about the Savvii Content Delivery Network (CDN)
Lucas Prigge, February 6, 2017
*** EDIT: Per April 2019 CDN options (cookieless domain), which were not adding value anymore since HTTP/2 deployment have been removed from code ***
*** https://github.com/Savvii/warpdrive/releases/tag/2.10.0 ***
*** Blog post alive for historical reasons ***
Our customers often ask us about our Content Delivery Network (CDN) and what you can do with it. Our CDN can improve performance for WordPress websites with a lot of static content. But how does it work exactly? And what’s to be gained from using an external CDN? Read on to find out.
Our stack is already completely optimized for WordPress. We do this with technologies like an optimized NGINX Web server, PHP 7 and server side caching. This means that your site will already be lightning fast on our servers, without the use of a CDN.
A CDN can speed up your website even more, depending on your site’s configuration. Loading your site quickly means asking your web server to excute a command. With a CDN, this command is spread over two servers, both of which deliver different elements of your website simultaneously. In this case the web server loads dynamic content, while the CDN serves static assets.
So what are ‘static assets’?In a nutshell, web pages are dynamic while images, CSS and JS files count as static assets. You can find a list of all extensions that are served with our CDN on our support pages.
The Savvii CDN
Here at Savvii, we have developed our own CDN, which serves all static assets.
It’s actually slightly inaccurate to call our technology a CDN. That’s because the content is loaded over the same server rather than many servers – but with savvy technology we’re able to get around the limit on the number of assets that can be loaded from one site.
At Savvii, all static content is served from a subdomain of our website. This tricks your browser into believing that content is being served from 2 different sites, which allows it to be served together at the same time. The subdomain doesn’t serve cookies, which also helps.
You can use the Savvii plugin to activate (or de-activate) our CDN. It’s deactivated by default, so remember to switch it on when hosting a new site with us.
Savvii CDN and SSL
Our CDN is currently not compatible with SSL. This is because if you have SSL on your website you don’t need to override the limited amount of assets a browser can load at the same time, which is the purpose our CDN serves.
It’s also related to the link structure of the content served over the CDN. Here’s an example of the URL:
As you can see, the content is served over a two-step subdomain. Your Savvii-URL is already a subdomain of .savviihq.com, of which a cdn.-subdomain is created which serves the static assets.
Of course, your Savvii-URL is available over SSL, encrypted with a wildcard certificate, but unfortunately this cannot cover the cdn.-subdomain.
Don’t let this put you off using SSL though. A SSL certificate offers many benefits, and your site can be just as fast or even faster than our CDN.
We use SSL with SPDY, which loads every asset simultaneously in one stream. Thanks to http/2, a website over SSL loads even faster. We’ve seen this with many customer websites as well as our own.
External Content Delivery networks
Of course, we shouldn’t forget the ‘real’ CDNs and our hosting doesn’t limit you to using our CDN.
There are many external CDNs which not only improve the speed of your website, but also its stability and security. Some well-known providers in this area are CloudFlare, MaxCDN and Amazon S3/CloudFront.
Although the various services are too complex to go into in this post, here are some factors to consider when choosing the right option for you.
Proxy caching or static assets?
Earlier in this post we defined a Content Delivery Network as a separate server which serves static content. This is a ‘true’, ‘static asset’ CDN. However, there are services that are often called CDN, but offer something more. CloudFlare, for example, saves entire webpages in its cache in order to serve them from different proxy servers worldwide.
Push or pull?
To serve static content via a CDN, the CDN has to be able to accessit. There are two methods for this: push or pull. The clue is in the name – with push, you need to push the content to the CDN yourself. With the pull method, a CDN can retrieve the content from your website without need for your manual interference. Obviously, the latter is much easier.
Overview per CDN
|CDN||Push / pull?||Static assets / proxy cache?||Via SSL?||WordPress integration|
|CloudFlare||Pull||Proxy cache||Yes||Via own plugin|
|MaxCDN||Pull||Static assets||Yes||Via W3TC|
|Amazon S3 / CloudFront||Push||Static assets||Yes||Via own plugin|
Our hosting is compatible with these external CDNs. In fact, it’s more important to check how well a CDN integrates with your WordPress installation.
Some make this integration easy with their own plugin, while others require more manual changes. You should also check whether the connection with the CDN is encrypted if this important for your site. Most CDNs make this easy and offer it for free.
Obviously, there are many more external CDNs. However, CloudFlare, MaxCDN and Amazon S3 / CloudFront are the most popular among our customers. We’ll look further into WordPress and CDN integration in future posts so be sure to subscribe to our blog.
Contact us if you have any questions about using our CDN, or an external CDN with our hosting.