Migrating League of Legends Game Infrastructure to AWS and AWS Auto Scaling
Key Takeaways:
- Riot Games, the publisher of popular games like League of Legends and Teamfight Tactics, partnered with AWS to migrate their game infrastructure to the cloud and leverage AWS Auto Scaling.
- The migration involved overcoming several challenges, including moving from on-premises Windows servers to Linux-based game servers running on AWS, and optimizing the Auto Scaling strategy to handle the variable performance profiles of different game modes.
- The migration to the cloud and the implementation of Auto Scaling resulted in significant cost savings, up to 10 million dollars per year, by allowing Riot to increase the CPU utilization threshold for scaling up new game server instances.
- The new cloud-based game provisioning platform enabled Riot to experiment with new game modes, such as Swarm and the Teamfight Tactics game mode, by quickly scaling resources to support their unique performance profiles.
- The success of the migration has also opened up opportunities for Riot's other games and R&D projects to leverage the cloud-based game provisioning platform, simplifying infrastructure management and allowing game teams to focus on delivering the best player experience.
Migration Challenges and Solutions
- Migrating from On-Premises to Cloud: Riot had to migrate their game servers from on-premises data centers around the world to AWS regions, local zones, and outposts, which took several years to complete.
- Porting from Windows to Linux: Riot had to port their game servers from Windows to Linux, which required significant effort to address platform-specific bugs and ensure performance parity.
- Leveraging Auto Scaling:
- Riot had to determine the "player pain threshold" - the CPU utilization level at which the player experience would start degrading, which they found to be around 80% for their games.
- They experimented with different load balancing algorithms and simulations to find the optimal approach, ultimately settling on a round-robin algorithm that maintained a tighter oscillation around the target CPU utilization threshold.
- This allowed them to gradually increase the CPU utilization threshold, resulting in significant cost savings of up to 10 million dollars per year.
Impact and Future Opportunities
- Enabling New Game Modes: The cloud-based infrastructure and Auto Scaling capabilities allowed Riot to experiment with new game modes, such as Swarm and the Teamfight Tactics game mode, without having to over-provision resources.
- Simplifying Infrastructure for Other Games: Riot's new cloud-based game provisioning platform has opened up opportunities for their other games and R&D projects, allowing them to focus more on the player experience rather than infrastructure management.
- Exploring New Technologies: Riot has already experimented with running their game servers on Graviton instances, which could lead to further infrastructure optimizations and cost savings.
- Supporting Evergreen Game Modes: Riot is now exploring how to support non-match-based, more "evergreen" game modes, which will require adapting their game provisioning platform to handle the unique challenges of those game types.
Overall, Riot's migration of League of Legends to the AWS cloud and their implementation of Auto Scaling has not only resulted in significant cost savings, but also unlocked new opportunities for experimentation and innovation in their game offerings.