Cloud and database services provide the right fit
Founded in 2005, MapMyFitness is a leader in connected fitness, offering GPS-based tracking apps that have topped both Android and iOS stores’ fitness categories since their inception. The company has steadily grown and now boasts more than 22 million registered users.
To address seasonal demand, scale strategically and maintain its rapid growth, MapMyFitness uses a variety of Rackspace services - including dedicated and cloud servers, RackConnect and MongoDB management services from ObjectRocket.
“What initially drew us to Rackspace were cost and reliability,” says Jesse Demmel, vice president, engineering at MapMyFitness, “as well as the ability to get the benefits and performance of a dedicated environment without any of the hassle of managing it.
“As we’ve grown, one thing that has kept us at Rackspace is the cloud, and the RackConnect to the dedicated side, which gets us really low latency from cloud to dedicated,” says Demmel.
MapMyFitness’s customer base has at least doubled every year since it began. In addition to this consistent growth, data volume fluctuates in a predictable pattern each year.
Demmel explains, “Every year we are growing at a rate of 2.5x in terms of the data that we have to support. Our traffic is very cyclical: summer is our peak, and it starts trickling down during the autumn until it gets to holidays and picks back up with New Year’s resolutions. We’re at least doubling page views and mobile sessions year over year on top of increased user engagement.”
To address the steady growth and fluctuation, DevOps has been a crucial component of MapMyFitness’s strategy. “We make heavy use of Puppet to fully automate our environment, and we practise continuous deployment, deploying to production daily for the web and as often as we can for mobile,” Demmel says. “We integrate tightly with development, embedding DevOps personnel with our development team as they’re building features to ensure that we can handle the performance and that we’re building out the infrastructure appropriately at the right time.”
Demmel sees the addition of Performance Cloud Servers as an exciting step that will further enable the company’s journey towards total automation.
“We’re getting 5x better performance out of the Performance Cloud than the previous generation of the cloud,” Demmel says. Yet despite this success, they still find dedicated to be the best solution for their database needs. “We’ve wanted to keep the databases on dedicated hardware due to the need for high IOPS,” Demmel explains. “In recent years, it’s been shown that high IOPS for databases is possible in the cloud as well, but the cost and reliability of dedicated hardware is still much better than the cloud.”
While MapMyFitness’s MySQL databases average more than 9000 queries per second (spiking at twice that volume), the company looks to MongoDB as a solution that will allow it to grow cost effectively.
“What led us to Mongo was that classic relational databases scale vertically, and aren’t cheap to do right,” Demmel says. “It was a cost choice. You look at the company and how fast it’s going to grow and where we’re going to be in five years, 10 years, and a vertically scalable solution like MySQL was pretty cost-prohibitive.”
Phone: 1800 722 577
Schneider Electric's EcoStruxure Micro Data Centre is designed to support distributed IT...
The Schneider Electric RD300 series of InRow Direct Expansion units are a close-coupled cooling...
The Schneider Electric APC Smart-UPS On-Line SRT1000XLI 230 V has been developed to handle...