Pages

Saturday, March 15, 2014

Why We Deployed Zencoder on Google Cloud Platform

Todays guest post comes from Jon Dahl, VP of Encoding Services at Brightcove.



Brightcove’s Zencoder transcodes millions of video and audio files each month, all in the cloud. Weve worked hard to establish the Zencoder service as the cloud encoding performance leader and are constantly investigating ways to optimize the application and to architect the service around the best infrastructure available. So, we are very excited to announce the Beta availability of the Zencoder cloud encoding service running on Google Compute Engine.



The Zencoder service offers developers APIs for the fastest and most reliable live and file video encoding in the cloud. Thousands of customers, such as AOL, PBS, Khan Academy and the Wall Street Journal, have built their media workflows around our service.



Starting today, developers building applications and video workflows on the Google Cloud can use the Zencoder API to transcode video for a wide variety of Internet-connected devices. Users will be able to programatically select a Cloud Platform region for their transcoding in addition to previously supported regions. Initially, transcoding will be limited to video on-demand jobs, but we will expand to include live transcoding in the future.



Based on our usage and testing to date, there are a few specific things about Cloud Platform that were most excited about, and as we scale up usage, we hope to release more metrics:



Multi-cloud

At a high level, its fundamentally important to have a multi-cloud approach to our infrastructure. Having a diversity of cloud resources makes the service more reliable and resilient.



Fast launch times

We built the Zencoder service from the ground up to scale dynamically based on demand. Our goal is to obviate the notion of the queue, or to effectively have infinite lanes in which jobs can be slotted. When a server isnt available for a job, we have to spin one up. Compute Engine instances boot extremely fast, and the faster we spin up instances, the better the experience for our customers.



Consistent performance

Its one thing to be really fast, but Compute Engine boot times are consistently fast. For example, from our preliminary testing, we found that if you run 100 instances, each instance has the same characteristics.



Fast I/O

With a service running at the scale of Brightcove’s Zencoder, even the smallest performance advantages in underlying infrastructure help. Video encoding is fundamentally a CPU-bound process, but in aggregate, improvements in disk I/O make a difference. Video encoding jobs typically consist of a single input file going to multiple output renditions. Improvements in disk read/write time will reduce latency and decrease transcoding time.



Intelligent caching

Content providers should use Google Cloud Storage in conjunction with the Zencoder service on Compute Engine. Storing and processing content in the same cloud infrastructure ensures fast, reliable transfer. Additionally, Cloud Storage improves transfer performance by optimizing data placement and caching across its global infrastructure.



Super network

Were extremely impressed with the network consistency and speed, which are particularly important for content ingest and egress, as well as latency-sensitive service video functions such as live streaming.



The GA release of Google Compute Engine is big news for those of us with our heads and services in the cloud. Google has released storage and compute services that raise the bar (and maybe set the standard) for performance and reliability in some key areas. Were excited to see what types of video apps developers build that take advantage of the Zencoder service and the unique characteristics of Google Cloud Platform.



-Contributed by Jon Dahl, VP of Encoding Services, Brightcove

Related Posts by Categories

0 comments:

Post a Comment