Groupon 은 NGINX를 통해 Perfomance와 Scale을 향상합니다.

Groupon 은 대폭 할인을 적용한 일일 특가를 제공하며, 이로 인해 온라인 리소스에 대한 대량의 트래픽이 발생합니다.
사용자들은 제3자 소매상 및 회사에서 할인 서비스에 대한 쿠폰을 구매하려고 가입하지만, 이런 거래는 단기간에만 가능합니다.
전 세계적으로 4800만 명 이상의 활성 사용자를 보유하고 있는 Groupon의 사이트는 거대한 트래픽 증가를 자주 경험하며, 동시에 고객에게 서비스를 전달하면서도 이런 대량의 트래픽을 감당할 수 있어야 합니다.

목차

1. Groupon 의 도전과제
2. 해결책 – NGINX
3. Groupon 의 NGINX 채택 결과

1. Groupon 의 도전과제

Groupon 의 최고 엔지니어인 Aaron Bedra는 Groupon 의 IT 팀의 주요 목표는 “모든 사람들이 물건을 사고 싶어하는 때에 우리가 서비스를 제공하는 것”이라고 말합니다. 그리고 그는 “전 세계적인 회사로서, 그것은 사실상 하루 중 어느 시점이든 가능합니다. 우리는 전 세계를 아우르기 때문에, 실제로 Peak가 아닌 시간이 없습니다.”라고 덧붙였습니다.

그런 전 세계적인 인프라 내에서, Groupon 은 오픈소스와 무료 소프트웨어를 선호하므로, 독점적인 상업 솔루션은 선택사항이 아닙니다. 그러나 Bedra는 서비스와 지원이 테이블에서 제외되지 않았다고 말합니다.

“우리의 시스템은 완전히 오픈소스 또는 무료 소프트웨어에 기반을 두고 있습니다. 실제로, 우리가 사용하고 있는 오픈 소스 프로젝트와 일치하는 상업적인 지원을 찾고자 합니다.
그래서 만약 문제가 발생하면 우리가 실제로 도움을 청할 수 있습니다.”라고 Bedra는 설명합니다.

2. 해결책 – NGINX

Groupon 의 주요 사업이 완전히 온라인 활동에 의존하고 있기 때문에, 해결해야 하는 많은 심각한 문제들이 있습니다.
Bedra는 계속해서 “우리는 더욱 시급한 비즈니스 중요 이슈들을 가지고 있습니다.
웹 서버는 문제가 되어선 안되기 때문에 우리는 NGINX를 사용합니다.”라고 말합니다.

그는 “Groupon 은 주로 리버스 프록시를 위해 NGINX를 사용합니다. 이것은 전형적인 사용 사례입니다.”
라고 말하면서, Groupon의 아키텍처 목표 중 하나인 Edge 처리를 활용하는 추가적인 보너스를 언급했습니다.

“Edge에서 처리해야 할 일을 Edge에서 처리하는 것이 중요하다고 생각합니다.
각 단계에서 요청을 4번, 5번, 6번 이상 처리하는 대신, 모든 것을 Edge로 밀어낼 수 있다면 성능 향상을 얻을 수 있습니다. 이런 처리는 모든 것에 분산됩니다.
비즈니스 기능과 Edge 처리의 관심사를 분리하는 것은 실제로 중요한 케이스라고 생각하며, 그것은 NGINX가 제공할 수 있는 꽤 좋은 것이라고 생각합니다.”라고 Bedra는 말합니다.

우리는 서비스가 많기 때문에 거의 모든 서비스 앞에 NGINX가 있습니다. NGINX는 정말 큰 부분을 차지합니다. 즉, 트래픽이 올바른 방식으로 서비스에 도달하는지 확인하는 것입니다.

– Aaron Bedra, Groupon 수석 엔지니어

마지막으로, NGINX는 오픈소스입니다.
Groupon은 그들의 인프라에서 오픈소스와 무료 소프트웨어를 선호하며, NGINX는 그 디자인에 잘 맞습니다.

3. Groupon 의 NGINX 채택 결과

Bedra는 “Groupon 은 이해하지 못하는 버그, 혹은 오류 때문에 서비스를 중단하고 싶지 않습니다.
Groupon가 현재처럼 대규모 일때, 중단없는 가동 시간을 굉장히 중요시합니다. 우리에게 있어서, 우리가 그것에 대해 걱정할 필요가 없기 때문에 NGINX를 선택합니다. 우리가 필요할 때 NGINX는 존재합니다.”라고 설명합니다.
그 결과, NGINX는 이제 Groupon의 대부분의 내부 HTTP 트래픽에 대한 관문 역할을 하고 있습니다.
Edge에서 NGINX를 사용하여 트래픽에 대한 처리를 수행하면 전체 서버 트래픽을 분산하고 비즈니스 흐름을 최적화 할 수 있습니다.

Groupon 의 사용 사례와 같이 24시간 연중무휴 안정적인 콘텐츠를 제공하고 싶다면 NGINX, 혹은 NGINX Plus를 사용해보세요.
NGINX Plus는 NGINX의 상업적 버전이며, NGINX 오픈소스에 포함되지 않은 Active Health Checks, Live Activity Monitoring, Commercial Support를 포함합니다.
지금 NGINX Plus의 30일 무료 체험판을 시작하거나, 다양한 사용 사례에 대해 NGINX STORE에 문의하여 답변을 받아보세요.

NGINX STORE를 통한 솔루션 도입 및 기술지원 무료 상담 신청

* indicates required