Discord

Discord는 폭발적인 성장을 거치는 과정에서 Cloudflare가 대역폭과 하드웨어 비용을 낮게, 웹 성능은 높게 유지하는 면에서 준 도움이 대해 고맙게 생각합니다.

Discord는 온라인 컴퓨터 게이머를 위한 음성 및 문자 커뮤니케이션 앱입니다. Discord의 목표는 PC 게이머용 통신 앱의 실질적인 표준이 되는 것이며, 2016년 7월 기준 동시 사용자 수가 240만 명에 이르고 등록 수가 2,500만 건이 넘는 성공을 거두었습니다.

Discord의 과제: Websocket 서버에서 대규모 DDoS 공격 방지

Discord는 급속도의 성장을 위해 준비할 때 합리적인 가격으로 기존의 하드웨어 인프라를 신속하게 확장하면서도 성능과 보안을 유지하는 방법이 필요했습니다. 성능 측면에서는, Discord는 단일 홈 서버로부터의 전 세계로부터 정적 자산 서비스를 할 수 있는 콘텐츠 서비스에서 높은 성과를 가진 CDN(콘텐츠 전송 네트워크) 파트너로 전환해야 할 필요가 있었습니다. 보안 측면에서는, Discord는 만연하고 있는 DDoS 공격으로부터 WebSockets 기반 트래픽을 보호할 필요가 있었습니다. CTO인 Stanislav Vishnevskiy 씨의 설명에 따르면 이렇습니다. “우리 제품은 게이머 중심의 제품이기 때문에 게임 경기 중에 서로 DDoS 하기를 좋아하는 많은 사용자들이 모입니다. 우리가 점점 더 인기를 얻게 되면서 이러한 DDoS 공격의 강도와 발생 건수가 증가해 결국 우리 엔지니어들이 지속적으로 이에 대처할 수 밖에 없는 상황에 이르렀습니다.” Vishnevskiy 씨는 이어서 이렇게 말합니다. "Cloudflare를 사용하기 전에는 우리의 실시간 게이트웨이에서 DdoS 공격이 일어나는 동안 페일오버할 수 있도록 DNS 부하 분산으로 대량의 HAProxy 박스를 사용하고 있었습니다." 하지만 그 초기 하드웨어 솔루션을 사용하면 Discord가 매년 최대 백만 달러 단위 규모의 비용을 들이면서도 Discord의 엔지니어들이 계속 수고해야 하는 상황이었습니다. 따라서 Discord는 이러한 공격을 막기 위해 경제적이고 확장성이 뛰어난 솔루션이 필요했습니다. 그렇지 않으면 Discord의 고객 경험과 재방문 주기가 크게 떨어졌을 거라고 Vishnevskiy 씨는 설명했습니다. "한 번이라도 시스템 중단이 발생하면 고객은 실망합니다. 대부분의 기존 고객은 중단에 관대했지만 문제가 발생했을 때 등록한 신규 고객에게는 첫인상이 매우 나빠지기 때문에 신규 고객 유지 비율이 매우 낮았죠. 고객이 실망하고 신뢰가 떨어질 때마다 실질적인 게이머용 커뮤니케이션 앱이 되고자 하는 우리의 목표에서 멀어졌습니다.”

Discord의 솔루션: 보안이 기본 제공되는 CDN

2015년 8월 동시 사용자 수가 25,000명에 도달한 Discord는 Cloudflare를 찾아왔고 Cloudflare는 즉시 지속적인 성능 및 보안 혜택을 제공했습니다. Discord는 Cloudflare의 콘텐츠 배포 네트워크(CDN)을 활용하여 비즈니스를 현재와 같이 240만 명의 동시 사용자 규모로 손쉽게 확장했습니다(1년만에 9000% 성장). Cloudflare의 CDN은 200개가 넘는 전 세계의 데이터 센터에 콘텐츠를 캐시한 다음 가까운 영역의 사용자에게 직접 콘텐츠를 제공하는 방식으로 작동합니다. 매달 2PB가 넘는 Discord의 월간 트래픽은 Cloudflare의 에지 측 캐시에서 Discord 사용자에게 직접 제공됩니다. 따라서 Google 클라우드 고객인 Discord는 자신의 고객에게 Cloudflare와 Google 클라우드 간의 고속 상호 연결을 통해 더 빠른 애플리케이션을 제공할 뿐 아니라 Google 클라우드 요금을 월간 100,000달러 이상 절감합니다. 또한 Cloudflare의 보안이 항상 켜진 상태로 트래픽을 보호하고 제공하므로 상당한 편안함을 제공합니다. Discord의 소프트웨어 엔지니어인 Jake Heinz 씨는 “Cloudflare가 WebSockets 서버 앞에서 계층 7 공격과 다양한 계층 3과 4 반사 공격을 흡수합니다. Cloudflare를 통해 연결하는 동시 사용자는 240만 명인데, Cloudflare는 websocket 이벤트가 초당 200만 개까지 갑자기 증가해도 빠르고 안전하게 트래픽을 제공합니다”라고 설명합니다.

Discord는 Cloudflare를 사용함으로써 지속적으로 하드웨어와 대역폭 비용을 크게 절약할 뿐만 아니라 사용자에게 고성능과 안전하고 신뢰할 수 있는 애플리케이션을 제공합니다.

Discord
관련 사례 연구
주요 결과

연간 하드웨어 비용 100,000달러 절감

Google Cloud 네트워크 송신 청구 비용 월 100,000 달러 절감

Websocket 이벤트가 초당 200만 개까지 급격히 증가하는 경우에도 트래픽 보호

“API와 게이트웨이 서버에 대한 DDoS 공격을 걱정할 필요가 없으므로 안심하고 제품 개선에 집중할 수 있습니다.”

Stanislav Vishnevskiy
CTO