Support: 1-800-961-4454
1-800-961-2888

Make Your Websites Load Faster With Cloud Files CDN

16

When in Phoenix, optimize Cloud Sites!

There were rain puddles in Sky Harbor’s parking lot and clouds were floating over the Papagos! This is very good for us because more folks will be staying home, traveling on the Internet.

With everyone traveling on the Internet, we need to provide an optimal user experience where pages load as quickly as possible. As you might have guessed, it just happens that I was in Phoenix (or more precisely Tempe, Arizona) to work with one of our key partners: Limelight Networks. These guys have built a world class Content Delivery Network which allows bringing content such as static images as close as possible to the eyeball of the viewer. This is a great enabler for any web site as it allows web pages to simply load faster.

I spent yesterday morning with the Limelight team talking about the acceleration of web pages and tools that our customers should use to better their viewer experience. From a high level point of view, there are two key approaches:

1) Bring content closer to the viewer. For static content, the easiest solution is to publish to a CDN instead of the web server. With Cloud Sites, this basically means uploading images to Cloud Files, and then enabling CDN on top of the storage container. As an example, my personal web site (http://percula.net ) is on Cloud Sites, with all images accessible via CDN. The only visible change is that their URL points to a different location (e.g., for the image accessed from )

2) Pre generate content to have faster response times. The easiest solution is to cache the result of complex queries so that a page being hit is just fetched from memory rather than fetched via few back-end database queries.

Now, how to make this happen without too much pain?

For my blog (and for this blog), I use WordPress and am therefore very lucky as I just had to install and activate 2 plugins: CDNTools to publish to CDN via Cloud Files, and WP Super Cache which stated purpose is “To make WordPress faster”.

If I look at Drupal, there are primitives of work on the CDN front (with ) and also what looks like a few options on the caching front (http://drupalmodules.com/search/node/caching). I will then work with some of our guys who are more familiar with Drupal and will then indicate what seems to work well with Cloud Sites.

In the meantime, let me know which plug-ins you think can really help accelerate a web site.

Learn more about how Rackspace can help you with hosting your WordPress site.

About the Author

This is a post written and contributed by Nicolas Keller.


More
  • http://zoomphoto.ca Joe Elliott

    Does that really save anything loading the image from the cloud from a script? I know for myself, we have millions of images online, and loading them through a script bypassed most of the benefits that the CDN offered.

    The real speed benefit for us is to use the CDN, bypass our DNS and server altogether. Having our server load a script, then load an external image was actually slower than just loading the image locally.

    • Nicolas Keller

      Joe,

      The script is not loading the images, doing so would definitely kill your performance – It instead modifies the references, so that instead of pulling an image from yoursite/images/…, it is puled straight from the CDN (after being automatically uploaded)

      Makes sense?

      -nicolas

      • http://zoomphoto.ca Joe Elliott

        It’s an interesting concept, but you’re still adding that extra reference to your site to load something from an external site (the CDN). If it already supported CNAME you could skip that middle man step on your site and pull direct… that’s the part the Cloudfiles seems to be missing… well, that and SSL support.

        • Nicolas Keller

          Joe,

          Agree that we are missing CNAME – We are working on fixing this – And then SSL will follow

          -nicolas

  • http://jbyers.com/ James Byers

    Hi Nicolas,

    Any plans to increase the minimum TTL from 3 days? Cloud Files and Limelight is a great offering, but this restriction severely limits the benefits of long expires headers on static content. I have no problem with content falling out of edge caches if the files go cold, but being unable to send long expires headers to clients is a no-go.

    Thanks!

    • Nicolas Keller

      James,

      We are looking at different strategies to manage CDN expiration – Please send me an email with what would be perfect for you so that I can add your requirements to our discussions – My email is Nicolas.Keller_at_Rackspace.com

      -nicolas

  • Luca Fracassi

    Hi Nicolas,

    you are right, using a CDN like Limelight is indeed beneficial.

    I actually tested the CDN from Cotendo (http://www.cotendo.com) together with CloudSites and their technology is impressive from my point of view…

    Instead of having to place the files on a separate container you can just leave them on your server. You can simply handle that via DNS settings on the Cotendo control panel (filtering file types etc). The TTL is also very flexible, with possibility of forcing a global flush.

    Really, you need to check it out… if you want to get it touch with them let me know…

    Luca

    • Nicolas Keller

      Luca,

      Thxs for the tip!

      -nicolas

  • Mark

    Why do you not support origin pull and Cname? Can you give an explanation? Limelight surely can support it so why can’t cloudfiles? You do realize supporting Cname and origin pull would probably increase your cloudfiles users by 100′s of percentage points right? I constantly hear over and over again from people that the only reason they don’t use Cloudfiles is because you can’t offer something as basic as origin pull.

    • Nicolas Keller

      Mark,

      CNAME, streaming, etc… are all features that we are working on – Watch this space for announcements
      Regarding Origin pull, one way to look at it is that the CDN portion is basically pulling from the storage portion that is directly accessible via the REST API, so having the storage pull from another source might be inefficient as such a setup just adds a passive layer between the initial storage and the CDN – Please contact me to further discuss as I would like to understand the potential use cases

      -nicolas

      • Hubert Nguyen

        Hi Nicolas,

        I’m interested in knowing more. I’ve been using Origin Pull for a couple of years, and I really like the robustness and simplicity of the setup. Once the domain is setup, it is also instantaneous.

        Replicating data doesn’t “seem” to be as “instant”. What happens if I change some of my files?

  • Stretch

    Is there a way to prevent your images (or any content for that matter) on the CDN from being hotlinked? That is, can you only allow requests from your domain to retrieve content?

    • abartels

      Yes. Through our API, we have set up referrer restrictions so you can dictate who can link to your files.

      Hope this helps.
      Thanks,

      Angela

      • Stretch

        Thanks Angela, I’ll check it out..

  • Srdjan Stambuk

    Well, cname and origin pull is a must , otherwise lots of users need to develop in house, lets say we have a site that sells thousands of products, we are dealing with tens of thousands images and some of those images are created as category thumbs or product detail smaller version one time if they do not exist. If trying to update via API it would be quite messy and not to mention any image updates, origin pull with last modified headers would solve this as if image do not exist origin server would create them and edge servers would then cache them :)

  • ByBe

    You can change many things via the API, which for some doesn’t mean much but you can actually use your local machine using SSH or use the Cloud Server to do it.

    Check out http://www.bybe.net/blog/how-to-fix-rackspace-file-cloud-leverage-browser-caching-via-api-ssh.html that’ll tell you how to change the TTL’s 72 hours and beyond, and you can use SSH and CURL to set any API command. Something rackspace don’t mention awful a lot on here in regards of what to use to connect to the API.

    Hope this helps my fellow Rackspace Users ;)

Racker Powered
©2014 Rackspace, US Inc.