F5 NGINX Plus, CANAL+가 급증하는 비디오 스트리밍 수요 충족에 도움

비벤디의 자회사인 그룹 CANAL+는 전 세계적으로 콘텐츠 제작 및 배포 분야에서 선두주자입니다. 50개국 이상에서 2,400만 명에 달하는 구독자를 보유하고 있으며 모든 대륙에 7,500명의 직원이 근무하고 있습니다. CANAL+는 프랑스에서 약 1,000만 명의 가입자를 보유하고 있으며, 아프리카에서는 약 700만 명의 가입자를 보유하고 있습니다. 이 회사는 프랑스어권 아프리카 지역에서 선도적인 텔레비전 사업자이며, 영어와 포르투갈어권 아프리카 지역에서 유료 TV 분야를 선도하는 MultiChoice의 최대 주주입니다.

CANAL+는 116개의 선형, 비선형 채널을 자체적으로 제작하는 등 텔레비전 채널 제작 및 마케팅 분야에서 선두주자입니다. 또한 Netflix, Disney+, Paramount+와 같은 주요 주제별 채널과 글로벌 콘텐츠 플랫폼도 통합합니다.  

매년 34억 유로에 가까운 금액을 콘텐츠에 투자하는 CANAL+는 스포츠 프로그램(프랑스에서 축구와 럭비의 주요 자금 지원자), 영화(프랑스와 폴란드에서 가장 큰 자금 지원자) 및 시리즈(매년 14개 이상의 언어로 제작되는 50개 이상의 오리지널 시리즈 포함) 분야에서 중요한 역할을 하고 있습니다. 

7개 유럽 국가에 10개의 제작사를 소유한 자회사인 STUDIOCANAL의 지원을 바탕으로 CANAL+는 유럽의 장편 영화 및 TV 시리즈 제작 및 배급을 선도하는 기업입니다. 이 도서관에는 60개국 이상에서 출간된 약 7,000권의 도서가 보관되어 있습니다. 마지막으로, myCANAL 앱을 통해 디지털 분야에서도 주요 역할을 담당하고 있으며, 이 앱의 국제적 배포가 가속화되고 있으며 현재까지 약 30개 지역에 진출해 있습니다. 

비즈니스 챌린지

팬데믹 기간 동안 CANAL+는 TV 스트리밍 서비스에 대한 수요가 크게 급증하는 것을 보았는데, 이 서비스는 셋톱박스, 스마트폰, 태블릿, 스마트 TV, 노트북을 통해 myCANAL 플랫폼을 통해 접속할 수 있습니다. 사용량의 급격한 증가는 팬데믹이 끝난 이후에도 지속되었으며 교통량은 계속 증가하여 CANAL+의 기술 아키텍처에 대한 요구 사항이 더 커지고 있습니다. 

CANAL+는 HTTP 캐시에서 초당 약 50,000개의 요청에 달하는 최대치를 경험합니다. 또한 리플레이 서비스 트래픽의 60%가 오후 8시 30분에서 9시 15분 사이에 도착합니다. 

동시에 myCANAL은 Netflix, Disney+, Paramount+ 및 기타 타사 서비스의 콘텐츠를 추가하여 시청자에게 점점 더 많은 선택권을 제공하고 있습니다. 프랑스에서는 myCANAL 플랫폼을 통해 현재 10만 개가 넘는 콘텐츠에 대한 액세스를 제공하고 있습니다. 지난 몇 년 동안 CANAL+는 표준 HD 외에도 4K 해상도로 점점 더 많은 비디오를 제공하기 위해 이동했습니다. 트래픽 양이 증가했을 뿐만 아니라 이러한 변화로 인해 CANAL+에서 처리해야 하는 포맷 수와 메타데이터 양도 증가했습니다. 

다양한 플레이어로부터 광범위한 콘텐츠를 제공하면 라우팅 및 캐싱의 복잡성이 더욱 커집니다. 플랫폼은 사용자의 관심사와 특권에 따라 적절한 시기에 적절한 콘텐츠를 표면화하고 추천해야 하며, 권리자가 부과한 법적 제약에 따라야 합니다.

솔루션

시청자가 myCANAL과 상호작용하면 CANAL+의 클라우드 기반 콘텐츠 전송 시스템은 마이크로서비스를 활용하여 API 호출을 수행하고 이를 통해 제목, 에피소드, 리뷰어 평점 등 콘텐츠에 대한 관련 메타데이터를 검색합니다. 실시간으로 데이터 파이프라인을 처리하는 데 사용되는 반응형 스트림이라는 기술을 사용합니다. 3개의 비 SQL 데이터베이스를 사용합니다. 대량 쓰기 작업에는 Cassandra, 대량 읽기 작업에는 Redis, 인덱싱 및 데이터 교차 참조와 관련된 모든 작업에는 Elasticsearch를 사용합니다. 모든 것은 Amazon Web Services(AWS)에 호스팅됩니다. 

CANAL+는 F5 NGINX Plus를 사용하여 myCANAL 마이크로서비스에 대한 단일 진입점을 제공합니다. NGINX Plus는 레이어 7 요청 라우터와 HTTP 캐시 역할을 하며, 마이크로서비스의 동적 검색을 지원합니다. 7계층 요청 라우터인 NGINX Plus는 모든 요청을 올바른 마이크로서비스로 라우팅하는 역할을 합니다. 마이크로서비스는 IP 주소와 포트를 자주 변경하므로 DNS를 통한 동적 검색을 위한 NGINX Plus 지원이 중요합니다. HTTP 캐시로서 NGINX Plus는 제목이 변경될 때만 콘텐츠의 URL을 변경하는 CANAL+ 플랫폼을 보호합니다. 

NGINX Plus의 유연성과 확장성 덕분에 CANAL+는 팬데믹 기간 동안 급증하는 수요를 충족할 수 있었습니다. "우리는 확실히 인프라를 확장해야 했고 NGINX가 그것을 가능하게 해주었습니다." 데이터 편집 및 권장 사항 팀 리더인 James Mensah의 말입니다. "NGINX 인스턴스와 라우터의 수를 약간 늘렸습니다."  

처음에는 myCANAL이 프랑스에 배포되었지만 이후 다른 국가로 확장되어 동일한 코드를 사용하지만 각 시장마다 다른 인스턴스를 사용했습니다. CANAL+는 이제 폴란드, 이탈리아, 아프리카 대부분 지역에서 myCANAL을 제공합니다. Mensah는 "NGINX는 각 국가에 플랫폼을 배포할 때 올바른 플랫폼으로 라우팅하기 위한 라우팅 용량을 사용하기 때문에 국제적 확장에 큰 역할을 합니다."라고 설명했습니다. "우리는 NGINX 라우터를 맨 위에 두고 라우터 세트를 보유하고 있으며 사용자가 어디에서 왔는지 보여주는 헤더를 기반으로 라우팅합니다."  

그는 CANAL+가 "다양한 플랫폼이 있기 때문에 요청이 어디로 가야 하는지 결정하기 위해 NGINX 구성 파일에 많은 논리를 구현했다"고 말했습니다. 우리가 코드를 작성할 수 있다는 것은 매우 강력했습니다. 즉, 이 헤더에 이 값이 있고 헤더를 기반으로 요청을 라우팅하는 맵이 있는 것입니다." CANAL+는 자세한 NGINX Plus 설명서에서 필요한 모든 지침을 제공하므로 F5 지원 서비스를 활용할 필요가 없었습니다. 

NGINX 라우팅 기능은 새로운 myCANAL 플랫폼으로의 마이그레이션도 지원하고 있으며, 적절한 기능을 갖춘 장치에서만 액세스할 수 있습니다. Mensah는 "우리는 사용자의 장치에 따라 점진적으로 사용자를 마이그레이션해야 합니다. 그리고 우리는 NGINX 구성을 통해 마이그레이션을 제어하고 있습니다."라고 설명했습니다. 팀이 해야 했던 일은 요청 헤더에 기록된 대로 사용자가 사용하는 장치에 따라 사용자를 라우팅하는 규칙을 NGINX 구성에 추가하는 것뿐이었습니다. 적격한 기기를 사용하는 사용자는 새 플랫폼으로 라우팅되는 반면, 다른 사용자는 현재 플랫폼에 계속 액세스합니다. 

CANAL+에서는 F5 NGINX Ingress Controller가 지원하는 Kubernetes 클러스터도 점점 더 많이 활용하고 있습니다. Mensah는 "5년 전 프로젝트를 시작했을 때 우리는 [AWS] EC2 표준 인스턴스만 사용했습니다."라고 말했습니다. "하지만 이제 우리는 Kubernetes 컨테이너에 애플리케이션을 점점 더 많이 배포하고 있습니다." 

그는 이 클라우드 네이티브 아키텍처가 매우 확장성이 있다고 말한다. 멘사는 "우리는 언제든지 매우 빠르게 확장할 수 있습니다."라고 설명했습니다. 아침에는 대체로 사람이 많지 않지만, 낮에는 오후 8시에서 9시 사이에 가장 많은 사람이 myCANAL 앱을 이용합니다. "그래서 우리는 확장이 필요한 아주 특정한 시기를 가지고 있습니다." 멘사가 덧붙여 말했습니다. "일부 애플리케이션의 경우 인스턴스 수를 거의 두 배로 늘려야 합니다. 하지만 인스턴스가 필요하지 않을 때는 비용을 지불하고 싶지 않기 때문에 클라우드를 사용합니다." 

CANAL+는 플랫폼에 새로운 기능을 추가하는 한편, 지리적 확장도 계속하고 있습니다. 예를 들어, 이 회사는 시청자에게 자체 콘텐츠뿐만 아니라 타사 콘텐츠에 대한 추천도 제공하려고 합니다.

결과

견고하고 저렴한 아키텍처

NGINX Plus의 안정성과 확장성 덕분에 CANAL+는 상대적으로 적은 수의 서버를 사용하여 초당 최대 50,000개의 요청을 처리할 수 있습니다. 이를 통해 CANAL+는 AWS 영향력을 억제하여 비용을 절감할 수 있습니다.

빠른 응답 시간

확장 가능한 HTTP 캐시를 통해 myCANAL은 사용자의 콘텐츠 액세스 요청에 거의 즉시(1.5초 이내) 지속적으로 응답하여 뛰어난 사용자 경험을 보장합니다.

지표 및 통찰력

NGINX Plus는 CANAL+에 라우터와 캐시에 대한 가시성을 제공하여 데이터 분석을 수행하고 이에 따라 배포를 세부적으로 조정할 수 있도록 지원합니다. CANAL+는 NGINX와 통합된 Datadog 관찰 소프트웨어를 사용합니다. NGINX Plus 덕분에 CANAL+는 고객의 내비게이션 단계, 페이지 뷰, 비디오 클릭 및 기타 귀중한 사용 데이터를 추적하고 모니터링할 수 있습니다.

모든 고객 사례 보기

 

보다폰 로고
이익
  • F5 NGINX Plus의 강력한 확장성 덕분에 CANAL+는 상대적으로 적은 수의 서버를 사용하여 초당 최대 50,000개의 콘텐츠 요청을 처리할 수 있습니다.
  • NGINX Plus의 유연성 덕분에 Canal +는 최대 사용량 중에 인프라를 확장하여 클라우드 공간을 제한하고 비용을 절감할 수 있었습니다.
  • 라우터와 캐시에 대한 쉬운 가시성 제공 Canal +는 데이터 분석을 수행하고 배포를 개선해야 합니다.

도전
  • CANAL+는 팬데믹 기간 동안 TV 스트리밍 서비스에 대한 수요가 크게 급증하여 기술 아키텍처에 대한 요구 사항이 더욱 커졌습니다. 
  • 비디오 주문 서비스는 일반적으로 오후 8시에서 오후 9시 30분 사이의 최대 시청 시간에 대규모로 확장되어야 합니다.
  • 이 플랫폼은 프랑스에서만 다양한 형식과 해상도로 100,000개 이상의 콘텐츠에 대한 액세스를 제공하여 라우팅 및 캐싱 복잡성을 더욱 증가시킵니다.

제품