info@naevatec.com (+34) 911 407 507
A dated clip-art style illustration of a laptop-based video presenter icon connected by lines to several remote viewer icons on their own computer screens.

Designing an Elastic, Container-Based Infrastructure for a Growing Webinar Platform

Designing an elastic, container-based fleet of cloud machines to replace the costly, slow-to-scale in-house servers a growing webinar platform had outgrown.

Context

The client's webinar product was outgrowing the infrastructure it ran on. In-house servers were expensive to maintain and slow to expand; every real burst of demand meant a genuinely slow, costly provisioning cycle. For a product still actively growing, that wasn't just an operational annoyance; it was a real risk to the sustainability of the business model itself.

The project

  1. Design the platform's hosting on AWS EC2 from the ground up, using large instances capable of running several concurrent webinar sessions each.
  2. Package the webinar service in Docker containers, and adopt the newly announced Docker Swarm to cluster those containers across the EC2 fleet.
  3. Build a custom control service (internally, "the master") on top of that cluster: for every webinar, decide which machine should run its container; watch real demand and launch a new EC2 instance whenever the cluster's actual capacity ran low.
  4. Handle teardown just as carefully. When a webinar ends, its container is removed, and the master checks whether a machine has gone idle. An idle machine isn't powered off immediately; it's first marked for deletion, a quarantine state that stops any new webinar from being placed on it, and only actually terminated once everything already running on it has finished, avoiding a machine getting shut down mid-webinar.

The Docker Swarm logo: Docker whale mascots carrying stacked shipping
containers

Our role

Technologies

Conclusion and lessons learnt

The real shift here wasn't moving to the cloud on its own; plenty of products do that and still run on a fixed-size fleet sized for their worst day. It was treating capacity itself as something the system reasoned about continuously, driven by real demand rather than a number someone picked in advance, that turned a slow, capital-intensive scaling problem into something the infrastructure handled on its own.

Outgrowing your own infrastructure?

If demand is starting to outpace what your current setup can handle, let's talk about what an elastic, demand-driven architecture could look like for you.

Contact us