Anyone who knows Multiplay will know we love a challenge. Working with the biggest AAA titles, with games operating on an eye-watering scale, we have to!
With games now growing in popularity, sometimes seemingly overnight, studios expect hosting providers to be able to scale with demand. To provide some context, Fortnite has around 8m concurrent users at peak. That’s a lot of flossing.
Our aim for this test was to scale from zero to over 14m players using our orchestration layer and Google Cloud Platform’s (GCP) servers.
Will the orchestration layer hold up? Will anything fall over? Will our account manager from GCP call us up crying?
The scaling test
Our test involved taking an example server binary and requesting increasing amounts of server capacity, over a time period of around 80 minutes.
We repeatedly requested capacity to satisfy 1 million concurrent players and saw this completing within 3-4 minutes each time, across 6 GCP availability zones globally.
We used GCP n1-highcpu-8 VMs in each zone and continued scaling until we exhausted our agreed quotas for the test; around 94,000 vCPUs globally.
Now, the numbers:
- 11,689 virtual machines
- 233,777 servers
- 14,026,620 ‘players’ capacity
Let’s take a look at how our tech fared:
As you can see from the chart we achieved an incredible total capacity, enough to handle 14 million concurrent users at a density similar to real life examples we host today.
We paused the test half way to check over all of our systems, before continuing to our target. The orchestration layer didn’t let us down, and we were blown away by the speed at which VMs arrived from GCP.
Without the break, we believe we’d have reached this capacity in under an hour. If any game requires technology that needs to scale from zero to 14m players in under an hour, then I’m sure we can work out the kinks…
Lessons learned from the stress test
A test of such magnitude poses some unique demands but provides invaluable insight into how tools operate at this scale.
Most importantly, we discovered that our core components love a challenge. At peak, our MySQL database saw 25% load, Redis 2%, but our processing nodes only saw 10% load.
The sheer amount of data flowing through our InfluxDB cluster resulted in us making some key upgrades to ensure we could capture, visualize and alert on any potential problems.
We stopped the test at a little under 12,000 VMs. This wasn’t due to restrictions our end; more that we had a pre-arranged quota from our friends at Google Cloud, around our SSD storage limit. Having used a little under 0.7 petabytes, we thought it only fair to let them have it back!
Singing from the same hymn sheet – GCP and Multiplay’s orchestration layer
This is all made possible thanks to Multiplay’s orchestration layer, which scales at speed. This technology, designed from the ground up by Multiplay, powers many of the biggest games on the market. This, combined with the sheer scale and reach of Google Cloud Platform, means phenomenal performance.
The orchestration layer works with any cloud provider or game engine and is designed specifically to handle high capacity. To learn more about the technology, check out the toolkit.
Hitting the 14m mark was a proud moment, but we know we can go bigger…
To talk to us about the tech, or get a POC set up to see it for yourself, get in touch.