Moore-Wilson is a British design and development agency, purveyors of “bespoke technology solutions”. In other words, they’re in charge of the full web app experience, from design and development to lifecycle maintenance. Their projects are mostly PHP-based, often using Drupal as a CMS base. High-profile clients include British National Air Traffic Services, which runs UK air space, and Chatham House, an international think tank.
With many distinct projects, MW needed a way to ensure new projects got built smoothly while keeping an eye on old ones, resolving operational problems with as little effort as possible. With performance and reliability insight automated, MW’s 30 developers could focus on new applications. As a dimension of this challenge, having insight into the mechanics and performance of open-source and 3rd-party software was key.
After evaluating several APM tools and options, MW choose TraceView–and they’re glad they did!
With TraceView deployed on their 60 production servers, Moore-Wilson immediately began to see results. A problematic and unpredictable memory consumption issue that had plagued them for more than a year was resolved right after it occurred; with complete insight into the application’s behavior they were able to find root cause in the behavior of rarely visited pages being hit by a web crawler. The cause? A single page that made over 50,000 database queries before returning.
“Memory consumption would go through the roof and it would just burn itself into the ground, and that’s been going on for some time. Never really identified it in the traditional means … TraceView just made it blatantly obvious what the problems were.”
–Jasper Hargreaves, Hosting & Services Manager.
As an open-source based shop and Drupal contributor, MW leverages open-source code in their applications. However, this can be a double-edged sword: a contributed module of code might have worked well in the original author’s environment, but is not scalable in certain applications. TraceView’s excellent Drupal support gives the maintainers an expert’s insight into the function and performance of the code in production, making these problems easy to track down and resolve.
“When we do have these issues, what may take a day’s worth of digging into Drupal and narrowing down could now be done in an hour or two.”
TraceView doesn’t just bring nasty bugs to light–it also helps teams work together. Conversations between developers and operations teams could now share performance data which helped them quickly and amicably resolve production issues.
“It’s no longer the developers pointing a figure at operations saying ‘Your servers are running slow.’ It’s no longer us going ‘It’s your code running slow.’ We’ve all got some ground to actually stake an argument on.”
With Puppet modules for easy deployment and also hooks into TraceView’s annotations system, MW has a performance dashboard that is up-to-date with their deployments but also reflects knowledge about what changed and when–when they new code was deployed, or configuration changed. All of this means that they can concentrate on shipping new features, without spending undue time chasing down production issues.