Thursday, June 12, 2008

Web Service for Content Distribution Network

Having used CDN for a year now, I can say that the complexities of CDN deployment, origin server configuration, Apache configuration, pricing models, file placement, cache flush makes it pretty non-trivial deployment.

Just wondering why not have a "web service model for CDN".

Google recently introduced Google AJAX Libraries API.Google would place some of the popular AJAX libraries on their CDN servers thereby allowing caching, gzip etc. - thereby making the web pages load faster. Great idea! That could make some web pages really fast, quick to load.

Let's make CDN simple. Let's make hosting a file on CDN a 2 step process. See the following mockup:

Step 1: Upload file
Step 2:
Content type Bandwidth Requests per second

The entire process of - origin server configuration, Apache configuration, pricing, file placement, cache flush etc. can be made a 2 step process. A wrapper can be written on top of this entire process.

The pricing model can easily cover the cost of the server and the cost of developing such a web service. This could be a service on top of some of the popular CDN providers such as Panther Express, Level3, Limelight Networks, Akamai, etc.

I am surprised Amazon doesn't provide this service in conjunction with EC2 and S3.


Update: Just read an interesting article - "10 Easy Steps to use Google App Engine as your own CDN". I am going to try it out, and see what the latencies look like, from different cities in the world.

Labels: , ,


Anonymous Randy said...

This parallels what we're doing at Highwinds. We have a flex app which handles content mgmt, analytics, user provisioning, etc. called StrikeTracker. You can actually upload a file (up to 100m) within StrikeTracker and get your opaque URL or FTP and then go into StrikeTracker and get it. We also have an API so you could actually build EXACTLY what you're looking for using the API also.


11:46 PM  
Blogger mspeiser said...

Cool Mukul. Great idea.

4:40 AM  
Blogger Shams said...

Though the idea is fantastic, it is almost impossible to implement. If you have a simple page with a few images and text maybe what you propose would work well. Complicated pages with dynamic content would not fit into such a model. A lot of pages have dynamic content and would need more than just retrieving content from a cache. A CDN goes beyond being a simple caching network, it also helps in speeding up and delivering dynamic content!

9:00 PM  
Blogger Rajeev said...

Hi Mukul
I understand that google must be building redundancies across the world and indirectly one gets benefited from it. I have been using google app - Webpages from last 1 year for hosting CSS, images for my blog but latency is very very high for user hosted media. Moreover the service was not very consistent. Most of time there was a 404. The same however may not be applicable for google app but mind you a few days when there was a blackout , which people discounted stating that the service is targeted at developers and not really at corporates and this would certainly would not lead to any financial implications.You obviously would not like to build a CDN on such a platform for your oh so critical website. :)

11:30 PM  
Anonymous Anonymous said...

Do you like playing in the game which you need to use priston tale Gold, when you do not have priston tale Money, you must borrow it from friends, or you buy priston tale Gold. If you getcheap priston tale Gold, you can continue this game.

10:55 AM  

Post a Comment

<< Home