Thursday, July 31, 2014

MyKLIK Streaming

MyKLIK is one of the of RTM Online services for citizen of Malaysia. The current version was launched on March 2014. Previously, MyKLIK was using Joomla as CMS and integrate the video using IFRAME Html Tag.

The current version, was developed from scratch using CakePHP Framework and Twitter Bootstrap frontend for both Desktop and Mobile edition.

Previously, the Video Streaming was served using pseudo http technique. With RTM Online new directive to serve all the videos to all devices, we have to upgrade our VMS ( Video Management System ) to serve all known and popular devices.

The transition wasn't easy but we manage to do it.

When we launch on March, the average Pageviews was around 162k generated by 27.8k of users. By the end of July 2014, MyKLIK recorded 511k of Pageviews generated by 77.7k of users. Quite a substantial increase and preceded our initial projection.

As the users increases, so does the server's usage. Thanks to latest technologies so that we can scale out our system with ease. For delivering the video, we rely on Amazon Cloudfront CDN. We decided only to stream with HTTP Streaming for easier integration with various CDN and we can leverage on our caching servers too.

Initially, MyKLIK serve as one stop website for recorded programme on RTM Live TVs ( TV1,TV2 and TVi ) and only stream to Desktop PC using RTMP Flash provided by Adobe Media Server on our datacenter. Gradually, we change our process flow and now we manage to serve all devices using combinations of softwares.

For website, we host on cloud service provided by local cloud provider and deploy our own LAMP ( Linux Apache MySQL PHP ) + Varnish Cache for website acceleration. During MH370 tragedy, MyKLIK received tremendous load as use want to Catch Up with official MH370 press releases hosted in MyKLIK. 

The real challenge was always on how deliver the video stream. Our video encoded at 800kbps and we use HLS and WebM protocol to deliver them to our users. Currently we are happy with Amazon Cloudfront CDN. If we choose to develop our CDN on local datacenter , wewill meet an ultimate roadblock, the Bandwidth.

Just imagine the bandwidth cost for delivering a single 800kbps to 1000 user for 10 minutes.

Last but not least, stay tune with us at this section. We will bring updates from time to time.

No comments:

Post a Comment