Cloudflare helps Quizlet eliminate DDoS attacks, improve global site performance and cut networking costs using Google Cloud Platform
In 2005, 15-year-old high school sophomore Andrew Sutherland faced the kind of problem familiar to millions of other students: memorizing the names of 111 animals for a French test. Rather than making paper flashcards, he wrote a simple web app he called Quizlet to help him remember what he knew and what he didn’t. The next day, he aced the test with a perfect score.
Sutherland shared the app with friends, who in turn shared it with their friends. He added new features, growing the app into a larger website which uses games and flashcards to help students study. In 2007 he publicized the site beyond his circle of friends and to the general public. After that, the number of users grew rapidly. More than a decade later, Quizlet now has 23 million users in 130 countries.
By 2015, Quizlet’s existing cloud provider couldn’t keep up with the site’s explosive growth, and Sutherland decided to move to another provider. After comparing companies using benchmarking tests, he chose Google Cloud Platform. Quizlet found GCP offered the best performance, and had better core technology and pricing models than its competitors. Quizlet also had the most confidence in GCP’s product roadmap and future potential. Quizlet’s existing partner, global edge service provider Cloudflare, worked in concert with GCP to improve performance and security.
“We picked Google Cloud Platform after concluding it was the provider with the best technology for Quizlet’s needs. In particular we felt Google's core compute, networking, and disk technology was more sophisticated than other cloud platforms. As a bonus, GCP's pricing model meant it was also the most cost effective option.” — Peter Bakkum, Quizlet platform lead
Going live and meeting back-to-school demand
Quizlet switched to GCP in early August 2015 to prepare for its back-to-school rush, and saw traffic scale up six times from the summer quiet period. It moved all of its 200 servers to Google Compute Engine, which was able to scale smoothly to meet the demand when students went back to school.
Quizlet uses Google BigQuery to analyze how students are using the service, gaining insights that improve the product. For example, based on information gleaned from BigQuery searches about how students learn most effectively, Quizlet built a feature called Learning Assistant, which helps students more efficiently and effectively practice and master content, using the concepts of spaced repetition. BigQuery helps optimize the algorithms that determine how and when to present different types and difficulties of questions.
Quizlet uses several other GCP services. Google Cloud Storage stores and serves audio files created by Quizlet’s text-to-speech capabilities, which lets students hear content in 18 different languages. Meanwhile, Google Cloud Vision API powers a feature that uses optical character recognition to turn students’ photographs of printed study material into Quizlet study sets.
Protecting against DDoS attacks, improving performance
As Quizlet became more popular, it experienced an increase in distributed denial of service (DDoS) attacks that prevented students from accessing their study material. Cloudflare’s technology solved the problem. The Quizlet site sits behind Cloudflare’s network, which diverts malicious traffic away from Quizlet servers. Any new DDoS attacks are now squelched, and students always have access to the site, no matter if they’re studying after school or pulling an all-night study session.
“We had a number of DDoS attacks before we started working with Cloudflare and it hasn't been an issue since then,” says Peter Bakkum, Quizlet platform lead.
In addition, Quizlet is growing fast outside of the U.S., and needs to ensure that site performance is uniformly high around the world. Cloudflare has more than 116 points of presence across the globe to deliver content to students at closer proximity to them, which reduces load times by as much as 75 percent for some clients.
By caching assets at local points of presence, Cloudflare has significantly reduced the amount of bandwidth Quizlet requires and cut its costs of delivering the service. This local caches reduce Quizlet’s bandwidth needs by more than 10TB daily. Cloudflare’s peering arrangement with GCP has also cut Quizlet’s network egress bill — traffic sent from Quizlet’s servers to customers — by more than 50 percent.
“The combination of Google Cloud Platform and Cloudflare has improved performance around the world and solved our DDoS security problem while also reducing our operating costs. It lets us focus on our core business, which is to be the largest online learning community for teachers and students, rather than worrying about infrastructure issues” Bakkum says.