Pokemon Go Performance Issues – Gotta Catch Them All

Pokemon Go has stormed onto the scene this past week and the buzz is everywhere about it! However, being so successful in such a brief period of time can have a downside. Reports of players being unable to access services started appearing in relatively short order. Amazon’s CTO jumped into the fray offering their cloud services to help scale NiantecLab’s (creators of Pokemon Go) server-side infrastructure. While the Pokemon Go app has been positively rated by the majority of players, there are clearly a large number of players who thought differently, as indicated in the Google play App ratings.

Insert1

We had a look at how Pokemon’s website has been keeping up with the influx of traffic, and created a Pokemon Performance Dashboard.

Insert2

The two things that really stand out here; the amount of data being transferred every time the page is loaded (over 6 megabytes), and the amount of time taken waiting for the server to respond to requests.

A quick look in a browser developer tool at how the page is loaded illustrates the complexity of the page and how the initial server wait for a couple of blocking javascripts slows down the rest of the page load.

Insert3

A quick look at Google Page Speed highlights several areas that could be improved through some design changes.

Insert4

Design alone is not the issue here, because there are long server-side response times slowing the site. Note this view is specifically for the Pokemon site, and not the Pokemon Go app, which would use different web services and APIs to communicate between the mobile app and servers.

Clearly the results of having to pause the rollout of Pokemon Go due to very high traffic indicates that some additional testing could have been conducted to accommodate the massive success. By utilizing a Digital Performance Management (DPM) Platform the NiantecLab’s team could have been better prepared for dealing with the amount of traffic they received. External load testing from an end-user perspective could have warned their team about issues associated that much traffic hitting their infrastructure. Doing this load testing and combining it with a full stack, gap free, deep dive application monitoring instrumentation — to view the health of the server side of the equation — would have uncovered capacity issues before they impacted Pokemon Players.

Insert5

The complexity of modern applications, even applications supporting online players to acquire and battle virtual monsters, make the need for Digital Performance Management a necessity.  Pausing a rollout because of too much traffic can be a brand damaging event, so it’s better to capture those issues before the match begins. Remember that Digital Performance Management is Super Effective!

David Jones is the Director of Sales Engineering and AIOPs Evangelism for Dynatrace. He has been with Dynatrace for 10 years, and has 20 years’ experience working with web and mobile technologies from the first commercial HTML editor to the latest web delivery platforms and architectures. He has worked with scores of Fortune 500 organizations providing them the most recent industry best practices for web and mobile application delivery. Prior to Dynatrace he has worked at Gomez (Waltham), S1 Corp (Atlanta), Broadvision (Bay Area), Interleaf/Texcel (Waltham), i4i (Toronto) and SoftQuad (Toronto).