The Network Infrastructure that Powers Video Analytics for 100 Million+ Streams
Mux monitors the video streaming performance of hundreds of millions of video streams for companies like PBS, Funny or Die, and Wistia. Integrate your video player by simply dropping in a few lines of code, and you’re instantly able to monitor playback failures, startup time, rebuffering, and video quality for your videos.
In the midst of scaling rapidly — attracting nearly $12 million in venture funding in just over 18 months — Mux needs to focus on serving a rapidly growing customer base and innovating on the problem of video metrics collection. It can’t afford to have its infrastructure slow it down.
As Mux launched its API publicly back in June 2016, it turned to Backplane to solve the problem of routing for its Docker container deployment. Today, Backplane manages most of the traffic, which has allowed Mux to scale up its traffic, deploy and iterate faster, and secure its internal apps all with a single service.
Route traffic to thousands of containers
Containerized deployment allows Mux to build and scale its API in a modular way. However, with containerized deployment, it’s painful to keep up with routing requests to your containers and applications as they move around. “In the Kubernetes world and in the container world, this is one of the more challenging operational items on the engineering list these days,” said Adam Brown, Head of Infrastructure Engineering at Mux.
Brown considered Amazon Elastic Load Balancer and Google Cloud Load Balancing to solve this problem, but the solution architecture meant exposing a port in every one of the machines or services in their infrastructure.
“Whereas Backplane takes one step to start routing traffic, Amazon ELB setup is ten to fifteen steps.”
In contrast, “Backplane has a really nice model so that you don’t have to worry about the problem of routing traffic to containers at all,” Brown said. “Simply start a container with a Backplane agent along side and the traffic just flows.”
“Whereas Backplane takes one step to start routing traffic, ELB setup is ten to fifteen steps.”
Today, Mux is handling tens of thousands of requests every second. That means that they have thousands of containers running at any given time. Because each container instance has a Backplane agent, Mux is able to scale them up and down as needed, and the Backplane agent routes traffic to them appropriately.
“Backplane has made it really easy to scale,” Brown said. Even though they’re managing a lot of traffic, the Backplane service handles it all. Nothing changes with the process. “All we have to worry about now is ‘Do we have enough CPU resources available?’ If we need more, we just add more.”
Deploy with confidence to an audience of 70 million+
For video media companies like Funny or Die, Mux is critical infrastructure. Funny or Die’s audience is 70 million+ people worldwide. If Mux goes down, Funny or Die’s video quality could degrade significantly without them knowing. Mux’s data shows that “just one buffering event decreases the amount of video watched by 39%.”
As a rapidly scaling company, Mux needs to move fast, but it can’t break things along the way. The team has to balance pushing the feature set forward with ensuring that the infrastructure is stable and reliable. They integrated Backplane because they knew they needed routing and load balancing. But they had been pushing blue-green deployments down the to-do list as something that they could hold off on.
Blue-green deployments allow you to progressively move traffic to a new service rather than moving it all at once. Having that tooling means that you can deploy more frequently with confidence rather than deploying infrequently with a lot of stress.
“Backplane makes blue-green deployments trivially easy.”
With Backplane already routing traffic, Mux got blue-green deployments for free. “Often it’s very difficult to do that kind of routing of traffic, but Backplane makes blue-green deployments trivially easy,” Brown said. To deploy a new version of the API, all they need to do is the following:
- Give the new version a different label in Backplane.
- Bring the new version online and make sure everything is working fine.
- Use the Backplane API to incrementally switch traffic to the new service, verifying that things work before switching all traffic to the new version.
Now Mux bakes blue-green deployments into nearly every deployment, and that helps the entire engineering organization move faster.
Secure your internal apps without any additional overhead
After using Backplane for some time, Mux realized that they could reduce the complexity of their VPN and use Backplane’s security features for all of their internal apps.
Internal services, like log feeds and metrics dashboards, don’t always come with nice user management features. You end up sinking a significant amount of time into securing your internal apps in addition to managing user credentials for those apps.
“Now, we don’t have to worry about security for our internal apps.”
Backplane’s cloud agnostic identity aware proxy allowed them to rip all of that out. When an unauthenticated user requests any endpoint that’s secured by Backplane, the client is forced to OAuth with Google Apps. Everything goes through Backplane no matter what cloud or VPC it’s on.
“Now we don’t have to worry about security for our internal apps. We just tell Backplane, ‘Expose this service to that one person,’ and it all just works,” Brown said.
And because everything is routed in via Backplane, no public IP addresses are exposed for any of Mux’s services. With Backplane, no public IP addresses are exposed to machines on a public network. There’s zero ingress traffic.
Having Backplane’s agents take care of the traffic means Mux can concentrate on Mux. Instead of dealing with infrastructure, the team can focus on product, knowing they can continue to scale the service for more customers and continue to help those customers understand their video better.
Backplane helps companies scale, secure, and route traffic across the world. Learn more at our docs and try us out for free.