When we began building Panopto’s video platform, we wanted to ensure that our infrastructure provided on-premises and cloud-hosted customers with great scalability, so that as your use of Panopto grows, our platform can scale to easily accommodate it.
We recently posted a slide deck to our SlideShare site with an overview of scaling with Panopto. Today’s blog post is meant to accompany that deck, providing some additional information about the components of Panopto’s server-side platform, and how we achieve scalability.
Before we talk about how Panopto scales, let’s begin with a basic definition of scalability: the ability of a system to handle a growing amount of work in a capable manner or its ability to be enlarged to accommodate that growth.
With a video platform, scalability applies to a number of elements in the system, including: web servers which require scalability to accommodate increasing HTTP requests, encoding servers which need to scale as more and more encoding jobs are submitted, and data scalability to accommodate a rapidly increasing amount of video storage.
As you’ll see in the slide deck, Panopto is architected to enable each of these components as well as other elements of the platform to scale. We call out four major server roles that comprise Panopto:
For customers deploying Panopto on-premises, we support a number of server topologies, including:
For customers running Panopto as a hosted service in the cloud, we share the same code base and installation binaries as on-premises customers. We simply change the configuration to allow for greater scale. Specifically, we break out server roles even further to include:
Because our hosted offer is built on Amazon Web Services (AWS) – specifically Amazon’s Elastic Compute Cloud (EC2) and Simple Storage Service (S3), we benefit from built-in Amazon functionality that allows our platform to dynamically scale up our encoding servers based on current demand, and grow our storage as more content is uploaded into Panopto. Auto-scaling in the cloud helps ensure that we’re running our platform efficiently, and that we’re never billing our customers for idle server time.
To ensure the uptime and reliability of our hosted cloud, we also scale Panopto across multiple Amazon availability zones – mirroring our server infrastructure across different Amazon data centers in different geographic locations. This helps ensure that, even during a catastrophic data center outage, our servers remain functioning and our customers can continue using the video platform without interruption.
As you evaluate different video platforms for your business or university, you should ask the provider about how they scale – both on-premises and in the cloud. The ability to scale out easily and dynamically based on demand can be critical to the success of your deployment, as we’ve seen with universities like Newcastle and Essex, who both capture tens of thousands of hours of video each school year.
If you have any questions about Panopto’s scalability story or are interested in discussing how our video platform can help your organization, drop us a line or give us a call at (855) PANOPTO.