Video Streaming Infrastructure

Problem:

Our client, a software development organisation, developed an e-learning web application for a large Australian university and looking for a cost effective yet efficient, secure, highly available and fault tolerant infrastructure to host this application as SaaS, targeting 150,000 user base. Client wants the capability to handle 5000 concurrent users streaming Audio/Video media, and still wants to maintain acceptable user experience and response times.

Solution:

Given insight into target application, its operational requirements, use cases, and target load, we proposed to deploy it using hosted infrastructure of virtual private servers (VPS). With thorough analysis we were able to deduce operating system requirement to one flavour of Linux i.e. CentOS, due to its reliability, wide adaptation, easy maintenance and no licence fee. Further, converging OS requirement to one flavour, allowed us the ability to select an efficient virtualization technology with lowest possible VMM overhead hence maximum efficiency.

Next, using OS virtualization technology we deployed public facing load balancers in active and cold-standby configuration, load balanced web servers, MySQL servers in master-slave configuration, Wowza streaming server and NAS file server with RAID5 support. Network was divided in various VLAN in order to provide resource segregation and security. An IPSEC based VPN was also configured to provide secure access to this infrastructure. Entire setup has a web-viewable and real-time resource, services and bandwidth monitoring capability. Everything was deployed over six physical servers having massive physical resources. Hardware was co-located in a large regional data center.

Result:

This is how by avoiding any single point of failure we deployed highly available, load balanced, secure and optimize infrastructure of servers where redundant resources were not only used as backup in case of failure, but were actively participating in serving clients during normal day to day operations. Our client application, which they are now enormously selling, is serving hefty load of users yet providing excellent user experience.