최신 밈이나 특별한 재능을 가진 반려동물을 찾아 웹서핑을 해본 적이 있다면 9GAG를 만났을 가능성이 아주 높죠. 각종 밈, gif, 기타 바이럴 콘텐츠가 매일 수없이 올라오는 인터넷에서 가장 인기 많은 곳 중 하나니까요. 9GAG의 공동창립자인 Derek Chan은 “우리는 즐거운 아이디어를 증진시키고 싶다”고 말합니다. 그리고 9GAG에서는 그 일을 어마어마한 규모로 해내고 있습니다.
지난 5년간, 9GAG의 웹 사이트와 모바일 앱 이용자 수는 급증했습니다. 지금은 매달 고유 방문자 수만 1억5천만을 웃돌고 있고, 그들이 사이트에서 이용하는 이미지 콘텐츠는 수십억 개에 달합니다.
이렇게 대규모의 성장을 이처럼 빠르게 이루어내면 인프라 문제가 생겨나곤 합니다. 그리고 9GAG 역시 관련 문제에 익숙하죠. 9GAG 최고기술책임자 겸 공동창립자인 Derek Chan은 Cloudflare로 옮겨가기 전까지 9GAG에서는 CDN을 이용했지만, 이렇게 증가하는 유저 수를 따라가는 데 필요한 안정성이나 기능을 제공해주지 못했다고 말합니다.
한 주에도 여러 차례 유저들이 느린 로딩 속도에 대하여 불만을 제기했고, 여기에 지원 교환과 화재 대피 훈련이 이어지면 9GAG의 엔지니어링 담당자가 노력했는데도 불구하고 네트워크가 교착 상태에 빠지면서 문제가 더 악화되곤 했습니다. 여기에 더해 9GAG는 악의적인 액터들로부터 공격도 받고 있었죠. 이들은 정교한 봇넷을 이용해 하루 종일 사이트를 다운시켰습니다.
웹 자산의 경우 대부분 성능이 핵심이지만, 9GAG에게는 성능이 특히 더 중요합니다. 유저들은 보통 몇 바이트 정도로 작은 콘텐츠를 빠르게 찾으려고 이 사이트를 방문합니다. 그래서 아주 잠깐의 다운타임만 있어도 9GAG는 바쁘게 움직여야 하죠. 느려진 로딩 화면은 유저들이 기대하는 바와는 상반됩니다. 그리고 이런 일을 너무 자주 겪으면 결국 다른 곳을 찾아가게 되죠. 9GAG에게 느리고 불안정한 사이트는 존속 자체를 위협하는 요소입니다.
결국 다른 서비스를 찾게 되었습니다.
9GAG는 심각한 DDoS 공격을 막아낼 수 있고 성능을 최대한 끌어올려줄 수 있는 클라우드 공급자가 필요했습니다. 이 팀은 다른 공급자로 전환할 때 모험을 하고 싶진 않았습니다. 자체 테스트 방법을 만들어서 트래픽의 5%를 여러 콘텐츠 전송 네트워크로 보내는 식으로 테스트를 했습니다. 그런 다음 각 CDN의 성능을 태국, 필리핀, 인도, 호주 등 9GAG의 주요 지역에서 비교했습니다.
그 승자, 아주 큰 차이로 결정된 승자가 바로 Cloudflare였습니다.
Cloudflare로 전환한 이후, Chan은 9GAG의 성능 문제는 과거의 일이 되었다고 말합니다. 9GAG가 필리핀 같은 지역에서 큰 랙 문제를 겪곤 했던 동남아시아 지역에서 특히 성능 향상이 두드러졌죠. 지금은 그 지역 가까이에 Cloudflare 서버가 존재하고, 세계 330개 도시에 걸쳐 있는 네트워크 덕분에 9GAG의 콘텐츠가 훨씬 더 빠르고 안정적으로 방문자들에게 도달할 수 있습니다. 게다가 9GAG는 Cloudflare로 전환한 후 CDN 청구서에서 약 30%나 되는 비용 절감 효과를 경험하고 있습니다.
DDoS 완화 및 속도 제한 같은 Cloudflare의 보안 방어 기능을 이용한 후로 9GAG는 더 이상 악의적인 공격으로 인한 다운타임을 겪지 않았습니다.
Cloudflare는 혁신적인 기술을 바탕으로 하지만, 전문가들로 구성된 팀이 상시 대기한다는 점이 무엇보다 확실한 장점입니다. Chan은 Cloudflare 지원팀에 연락할 일은 드물다고 말합니다. 그가 직접 경험한 바로는 Cloudflare가 다른 경쟁업체와 큰 차이를 보여준다고 합니다.
성능 향상부터 마음의 평화까지 얻은 9GAG는 Cloudflare 이용을 계속 확대해서 새로운 서비스도 이용하고 있습니다. Cloudflare Access는 직원들에게 9GAG의 인트라넷에 안전하게 접속하는 방법을 제공해주고 있고, 회사는 Cloudflare Workers 플랫폼으로 Cloudflare의 네트워크 에지에 맞춤 소프트웨어를 배포하는 방법을 실험 중입니다.
하지만 Chan을 가장 행복하게 해주는 건 무엇일까요? 불만을 느낀 유저들로부터 받는 메시지 개수입니다.