Ever since Pokemon Go was launched, there have been constant connectivity and performance problems for players around the world. It has been 20 days since the game was released and there are still times when players cannot log in or connect to the game. Sometimes, the game launches, but the environment is empty as the application tries to support the massive player demand. In addition, it is likely that hackers are launching DDoS attacks against the game infrastructure in an attempt to gain some media attention that has been closely following the game.
This does not have to be the case and there are best practices that Niantic, the developer of Pokemon Go, and Google Cloud, the host for the application, can do to alleviate these issues. Here are some points businesses should take into consideration when building online applications to ensure their availability:
- Elasticity – Use technologies to ensure that the resources for the components of an application (authentication, server, database, etc.) can be added as needed to meet the current demand. Use load balancing technologies and cloud orchestration models that create a flexible and on-demand infrastructure. When more players attempt to connect, application servers can be added to the resource pool dynamically, automatically, and transparently to ensure that the clients do not time out or take a long time to connect.
- Global distribution – Take advantage of global server load balancing (GSLB) technologies to distribute the player connections across multiple datacenters and regions. Ensure that players are connecting to resources that are in geographic proximity to their location to minimize latency and optimize the player experience.
- Monitor application SLA – When there is a problem, it is usually not because the application is down. More often, the issue is that the response time is too long and the login or application times out. A system needs to be put in place that is able to monitor the performance of the various application parts and understand what part of the end-to-end application path (servers, datacenter, wan, client) is causing the delays.
- Security – A robust and hybrid DDoS mitigation solution is necessary to stop hackers from disabling the game. DDoS attacks are common on the Internet today. They are easy to launch and many hacker organizations sell DDoS services to the general public. Pokemon Go has intense media visibility right now and hackers are looking to get their 15 minutes of fame by launching attacks and claiming that they took down Pokemon Go. Whether it was their attack, the massive influx of players, or someone else’s attack does not matter. In the public eye, there is no way to verify the actual cause of the outage unless Niantic and Google are willing to release this information.
Whether these practices will be put in place to alleviate the current Pokemon Go performance issues remains to be seen. As Niantic adds more countries and players to the game, the only guaranteed outcome is that players will continue to have problems getting on the game until the game developers adjust their infrastructure to apply these critical recommendations.
For more information, you can read my previous blog post “Was There a DDoS Attack on Pokemon Go or Not? Does It Really Matter?”