Overview
Groupon offers daily deals at steep discounts, resulting in stampeding herd‑style traffic patterns for its online properties. Users sign up to buy coupons for discounted services from third‑party retailers and companies, but these deals are only available for a short time. With over 48 million active users worldwide, Groupon’s sites frequently receive huge spikes in traffic, and must be able to withstand the stampede while still enabling its services to reach customers.
Challenge
Aaron Bedra, Principal Engineer at Groupon, said that the main goal for Groupon’s IT teams is “About making sure we’re up when everybody wants to buy things, and as a global company, that’s really at any point in the day. There’s no real off‑peak for us since we span the globe.”
Within that worldwide infrastructure, Groupon favors open source and free software, so proprietary commercial solutions are not an option. That doesn’t mean service and support aren’t on the table, however, said Bedra.
“Our system is entirely built on open source or free software. We actually do seek to find commercial support that’s inline with the open source project we’re using so that if we have a problem we can actually reach out,” said Bedra.
Solution
With Groupon’s main line of business completely reliant on its online presence, there are plenty of serious problems that need to be addressed. Said Bedra, “We have business critical issues that are more pressing. Our Web server shouldn’t be an issue, and that’s why we use NGINX.”
He said that, “Groupon uses NGINX for mostly a reverse proxy. It’s the typical use case,” but with the added bonus of fulfilling one of the architectural goals at Groupon: utilizing edge processing.
“I think it’s important to do stuff at the edge that should be done at the edge, instead of processing a request four, five, or six times over at every stage. If you could push all of that out to the edge you’d get a performance increase. You get that stuff distributed across everything. Separating the concerns of business function and edge processing, I think, is actually an important case, and that’s something I think NGINX can offer that’s pretty nice,” said Bedra.
Finally, NGINX is open source. Groupon favors open source and free software in its infrastructure, and NGINX fits nicely into that design.
Results
Bedra said that, “We don’t want to be down because of something we don’t understand. As big as we are at the moment, we really care about having the uptime. For us, we choose NGINX because we don’t have to worry about it. It’s there. NGINX is just there when we need it.” As such, NGINX is now acting as the gatekeeper for most of Groupon’s internal HTTP traffic as well. Using NGINX at the edges to perform processing on traffic also allows for the mitigation of overall server usage, and optimizes business flow.
About Groupon
With over $28 billion in revenue in 2017 alone, Groupon is the world’s leading online deal marketplace. The company offers group coupons at fabulous discounts, resulting in huge boosts in business for its merchant partners. The company employs over 10,000 workers, and is active worldwide in such countries as the United Arab Emirates, Denmark, and Thailand. Groupon has over 48 million active users around the globe. Groupon users can find coupons for services ranging from skydiving to meals.