How Lyft Built Its App (and Business) on AWS
Scaling an app used to be a challenge but the cloud changes everything, as Lyft's experience shows.
Lyft knows a thing or two about how to scale a company, growing from zero to a global business in just a few short years. A core element to the ride-sharing provider's success was figuring out how to scale its platform globally in a rapid manner. The cloud was the key in doing so, as evidenced by Lyft CTO Chris Lambert's keynote at last week's Amazon Web Services (AWS) Summit in New York.
When Lyft launched in 2012, Lambert said the company used just three servers running on the US-East region of AWS. In the early days of the company, Lyft actually called drivers after a completed journey to confirm that a passenger was dropped off, he recounted.
"It was only three weeks from the time we had the idea for Lyft to the time we launched, and we were 100 percent on AWS at the time," Lambert said. "We're still 100 percent AWS, but we use many more technologies beyond just EC2."
Within a year of launch, Lyft hit its first big milestone with 1 million rides. In April 2014, Lyft embarked on an effort to dramatically expand its reach with a project to launch in 24 cities in only 24 hours. The promise of EC2 is autoscaling for server resources as demand grows, a feature that Lyft made use of during its 24-city launch.
Auto-scaling isn't just about increasing server capacity, it's also about reducing server capacity when demand drops.
"We do eight times as many rides at peak on a Saturday night than we do on a Sunday morning," Lambert said. "Auto-scaling allows us also to scale down, to significantly save on our infrastructure costs when we don't need to pay for it."
Data storage for all Lyft rides is also tracked; for that effort the company uses the Amazon Dynamo service. Every GPS location for all Lyft rides is stored in the Dynamo system, which is also able to scale to meet demand.
The biggest launch in Lyft's history to date also occurred in 2014, with the debut of the Lyft Line service that enables users going to the same place to share a ride. Lyft Line is enabled by advanced data analysis that Lyft does using the Amazon Redshift service.
"So we had all of our data in Redshift, and it runs simulations of what would be possible for potential new transportation modes," Lambert said.
Lyft has adopted a micro-services approach and is now running over 100 different micro-services to enable the Lyft platform.
"These services are collectively serving over a million requests per second; this is what powers Lyft," Lambert said. "Every time you request a ride, you're not just hitting a single service. You're probably hitting 10 or 20 different services that are working together to make that ride as smooth as possible."
Sean Michael Kerner is a senior editor at Enterprise Apps Today and InternetNews.com. Follow him on Twitter @TechJournalist.