Pokémon Go was released in the US on July 6, 2016. Unless you’ve been living off the grid in a yurt (in which case you won’t be reading this blog post), you’ve probably observed that this was much more than a game release and more like the dawn of a new way of life for some people. While there have been well-publicized challenges as the game has scaled to reach millions, it's an amazing use of cloud that's enabled multiplayer game scalability to connect an unprecedented number of users in only a few weeks.
From a technology standpoint, it’s interesting to think about how games and other popular mobile applications can launch seemingly overnight at scale with millions of users. While in the past many gaming companies may have run out of their own data centers or traditional hosting centers, the most common pattern emerging from the industry makes use of a few key Cloud building blocks for gaming servers: load balancers, firewalls and network routing; VMs or containers for the game logic; a scalable document style database; and sometimes SQL databases and a caching tier. Looking at just the last two years, many of these companies have shifted from proprietary architectures to the same patterns and have started speaking at developer and ecosystem events such as the OpenStack and Docker conferences. The appeal of Cloud, and technologies like OpenStack and Docker for the gaming industry, is that they can rely on the scalability of the infrastructure in many layers of the game server architecture for not only scale, but also use a combination of the programmable network/routing layer and load balancers to implement rapid deployment of the game logic layer.
The one spot where I’ve seen a lot of concern/sensitivity to relying 100% on public Cloud providers in the gaming industry is in protecting their in-game economy servers or their login, authentication and authorization systems, in addition to securing their dev/test environments, and protecting those servers with an extra layer of security. Such game studios have been interesting partners for the IBM / Blue Box team, since they still need the flexibility to scale up their game, but they don’t want to have the specialized skills of managing a traditional data center for a couple pieces of their game platform. Cost is also obviously a big sensitivity—even with auto-scaling, public solutions may cost significantly more to meet I/O database performance demands significantly above a well-architected hybrid cloud solution.
Whether or not Pokémon Go is here to stay or is just a fad like collecting Beanie Babies, it’s clear that game development is leading the way to vet out next generation Cloud architecture and performance demands (something that all industries should be paying attention to for these use cases). As someone who's a big believer in communities and a gamer, it’s awesome to see this type of collaborative approach to pushing the boundaries of open source projects by pairing the intensely technical game development community with technical advocates focused on server side infrastructure such as the IBM Cloud team!
Disclaimer: Liz Durst is not affiliated with Pokémon Go, but will be looking to swap someone a CP 2147 Snorlax for an Aerodactyl if in-game trading is enabled in future releases.
Have you read the news?
Rumor has it this cloud thing is taking off.