Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Building A Video Streaming App: A Review of LeaseWeb’s CDN

14 May 2014 1  
A review of building a video streaming application using LeaseWeb's Content Delivery Network (CDN).

This article is in the Product Showcase section for our sponsors at CodeProject. These articles are intended to provide you with information on products and services that we consider useful and of value to developers.

Building A Video Streaming App: A Review of LeaseWeb’s CDN

I’ve had an idea for a while to create a mobile app that would enable people to easily find and view videos that are part of the public domain. Many of these movies have a huge historical significance.

Of course because of the size of these movies a player can’t download all the videos, but rather download them on demand or even better: stream them smoothly.

The best way to accomplish this is use Apple’s HTTP Live Streaming (HLS), which is automatically integrated into iOS’s video playing APIs.

But where to host these files becomes the next architectural issue to tackle when designing the end-to-end functionality of such an application.

Scalability isn’t generally the first thing you think about when you create a website or an application. However, if you are planning for the future, or when you start to run into scalability issues, making sure that your static content (images, videos, etc.) is served from a cache rather than a server’s file system is essential to creating a set of happy users.

The obvious choice is to serve the videos from a super fast Content Delivery Network (CDN) that is optimized for serving up videos.

LeaseWeb’s CDN is exactly the kind of CDN that I’d choose for this kind of application. LeaseWeb’s CDN has a number of unique features that make it the right choice for any number of different CDN-based solutions, but it has a special set of features that make it a particularly good choice for building video-based applications.

One of those features is its superior bandwidth. LeaseWeb CDN has capacity of 500 Gbps and growing, thanks to the placement of what they call SuperPoPs around the world (remarkable for a product that has been on the market for less than a year).

Bandwidth is a more important measure for CDNs than latency for large file distribution like video. Large and consistent bandwidth can make (or break) the video viewing experience in an app or webpage. Buffering during the middle of watching a video is a quick way to get customers to stop using your app, give you bad reviews, or both.

LeaseWeb CDN’s superior network bandwidth, along with its low latency due to edge server locations in Europe, US and Asia, makes it a perfect choice for global video-based applications.

On top of the infrastructure, LeaseWeb also has a sophisticated HTML5-based CDN Control Panel that takes away the complicated configurations that most Content Delivery Networks have.

The CDN Control panel not only has a dashboard that can show you your bandwidth usages in real time, as well as historical information about your traffic, it also has all the functionality necessary to completely manage your Pull and/or Push Zones. Your configuration can be fully managed through this UI, but is also accessible via an easy to use API.

The CDN has support for static files (including video), as well as support for HTTP Live Streaming, or Video on Demand HLS.

Using a Pull Zone is an easy way to keep your content on your servers, and allowing the CDN to push your content out to its edge servers in its data centers around the world.

Because my video content is already hosted in LeaseWeb’s data centers, this makes using LeaseWeb’s Cloud Server for hosting my login and other API functionality a natural choice.

Putting all of your content in one place, and having that place not only take advantage of LeaseWeb’s fast virtualized compute resources, but be able to take advantage of the fast connection between those computer resources and the CDN make it the perfect pairing, especially for dropping new video files, or processing on those files. Having my content and my cloud-based server functionality all in one place means that functionality will be as fast as possible.

Learn more about LeaseWeb: http://www.leaseweb.com/en/

Disclosure of Material Connection: I received one or more of the products or services mentioned above for free in the hope that I would mention it on my blog. Regardless, I only recommend products or services I use personally and believe my readers will enjoy. I am disclosing this in accordance with the Federal Trade Commission’s 16 CFR, Part 255: "Guides Concerning the Use of Endorsements and Testimonials in Advertising."

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here