Powering Your Data: How We Stay Connected

The post below is written and contributed by Matt McClure, Vice President, Chief Architect at MapMyFitness.

There’s no excuse for downtime. None. Especially now that the world has gone social and digital life is lived at an always-on, real-time pace.

At MapMyFitness, we know this very well. We run the web’s largest social network of fitness enthusiasts and a wide array of enterprise solutions. As you know, with a suite of web and mobile applications that use built-in GPS technology, we allow our users to map, record and share their exercise routes and workouts online (currently about 400,000 activities being logged daily). They can also search more than 80 million global routes, use online training tools, track nutrition, leverage fitness calculators and search local event listings.

Powering the data of 17 million users worldwide (a number that is expected to double in the next year) and not allowing downtime as an option brought us to the Rackspace Hybrid Cloud, through which we leverage dedicated and Cloud Servers, dedicated and Cloud Load Balancers, SAN, Cloud Files and more.

We have been a Rackspace customer since 2007, using Managed Hosting. Our traffic and usage patterns have grown steadily. As our customer base has grown, so has the variety of applications we provide. Some have very predictable, steady loads, and others can be much more difficult to predict. We recently launched a number of new applications that are seeing much more volatile traffic patterns. One app, called Courses, leverages our database of more than 80 million fitness routes and allows users to follow popular local routes, and track their performance against others following the same route. Users enjoy Courses because of the ability to compete against their friends in real-time, and with a fairly steady load throughout the week, activity spikes up to five-fold on the weekends.

We need ways to accommodate those spikes – it’s the perfect scenario for a hybrid cloud.

We moved some of our apps to the public cloud and kept our data stores on dedicated hardware and leveraged the two in concert with RackConnect. It made sense to stick with dedicated hardware in some instances. We store a lot of data; around 20 terabytes across our application environments. We decided to keep our data storage on managed hardware because of its sheer size and its I/O performance. We also kept our MySQL and Postgres on managed hardware. We use the cloud for overflow traffic, testing and development, as well as for hosting event-type websites that are shorter lived.

We’ve hosted the Tour de France web property for NBC Sports since 2011, offering web content, video and a real-time leader board feed. This site is a great cloud use case, since we need to expand capacity for a few weeks, and then scale back down. This is a great example of the power of hybrid cloud – we have extra capacity at our fingertips when we need it for events like the Tour de France, and we can leverage dedicated infrastructure for other apps that have highly demanding data analysis and I/O requirements, and have all of those connected and in one place.

This hybrid cloud solution created a host of new opportunities for us. We saw improved reliability and availability, and we improved our ability to scale. We can scale down in later months when we’re not experiencing our seasonal jump in traffic. And from an availability perspective, we can scale reactively to unexpected spikes.

Our availability has increased by a high percentage in the public cloud. Our number of downtime events has reduced significantly over the last two years.

For us, a hybrid cloud is the best of both worlds. It delivers on its promise of improved performance and scalability of the cloud while empowering us to keep our high-performance apps that need to scale vertically on managed hardware. It’s been key to be able to use both. As we grow, we will need to have a larger geographic footprint and the ability to tie these environments together will be even more critical as we expand.

facebooktwittergoogle_plusredditpinterestlinkedinmail