O F5 NGINX Plus ajuda o CANAL+ a atender à crescente demanda por streaming de vídeo

O Groupe CANAL+, uma subsidiária da Vivendi, é um importante player na criação e distribuição de conteúdo em todo o mundo, com quase 24 milhões de assinantes em mais de 50 países e 7.500 funcionários localizados em todos os continentes. O CANAL+ tem quase 10 milhões de assinantes na França e quase 7 milhões na África. É a principal operadora de televisão na África francófona e a maior acionista da MultiChoice, líder em TV paga na África de língua inglesa e portuguesa.

O CANAL+ é um importante player na produção e comercialização de canais de televisão, com 116 canais lineares e não lineares produzidos internamente. Ele também agrega os principais canais temáticos e plataformas de conteúdo global, como Netflix, Disney+ e Paramount+.  

Investindo quase € 3,4 bilhões em conteúdo a cada ano, o CANAL+ é um player importante em programação esportiva (o principal financiador na França para futebol e rúgbi), filmes (o principal financiador na França e na Polônia) e séries (incluindo mais de 50 séries originais por ano em mais de 14 idiomas). 

Com o apoio de sua subsidiária STUDIOCANAL, que possui 10 produtoras em 7 países europeus, a CANAL+ é a principal produtora e distribuidora de longas-metragens e séries de TV na Europa. Possui um catálogo de quase 7.000 títulos de mais de 60 países. Por fim, também é um player-chave no digital com seu aplicativo myCANAL, cuja implantação internacional está se acelerando, com presença em cerca de trinta territórios até o momento. 

Desafio Empresarial

Durante a pandemia, o CANAL+ viu um grande aumento na demanda por seus serviços de streaming de TV, que podem ser acessados pela plataforma myCANAL por meio de decodificadores, smartphones, tablets, smart TVs e laptops. O aumento acentuado no uso persistiu além do fim da pandemia e o tráfego continua a crescer, colocando maiores demandas na arquitetura técnica do CANAL+. 

O CANAL+ experimenta picos de aproximadamente 50.000 solicitações por segundo em seus caches HTTP. Além disso, 60% do tráfego para seus serviços de replay chega entre 20h30 e 21h15. 

Ao mesmo tempo, o myCANAL está oferecendo aos espectadores cada vez mais opções adicionando conteúdo da Netflix, Disney+, Paramount+ e outros serviços de terceiros. Na França, a plataforma myCANAL agora fornece acesso a mais de 100.000 peças de conteúdo. Nos últimos anos, o CANAL+ também passou a fornecer mais e mais vídeos em resolução 4K, além do HD padrão. Além de aumentar o volume de tráfego, essa mudança aumentou o número de formatos e a quantidade de metadados que o CANAL+ precisa manipular. 

Fornecer uma gama tão ampla de conteúdo de diferentes players aumenta ainda mais a complexidade do roteamento e do armazenamento em cache. A plataforma precisa apresentar e recomendar o conteúdo certo de acordo com os interesses e privilégios do usuário, no momento certo e de acordo com e dentro das restrições legais impostas pelos detentores dos direitos.

Soluções

Quando um espectador interage com o myCANAL, o sistema de entrega de conteúdo baseado em nuvem do CANAL+ utiliza microsserviços para fazer chamadas de API que recuperam os metadados relevantes sobre o conteúdo, como o título, o episódio e as classificações dos revisores. Ele emprega uma tecnologia conhecida como fluxo reativo, que é usada para processar pipelines de dados em tempo real. Ele usa três bancos de dados não SQL: Cassandra para operações de gravação em massa, Redis para operações de leitura em massa e Elasticsearch para tudo associado à indexação e referência cruzada de dados. Tudo é hospedado na Amazon Web Services (AWS). 

O CANAL+ usa o F5 NGINX Plus para fornecer um único ponto de entrada para os microsserviços myCANAL: O NGINX Plus atua como um roteador de solicitações da Camada 7 e um cache HTTP, além de permitir a descoberta dinâmica de microsserviços. Como um roteador de solicitações da Camada 7, o NGINX Plus é responsável por rotear todas as solicitações para o microsserviço correto. Considerando que os microsserviços alteram seu endereço IP e porta com frequência, o suporte do NGINX Plus para descoberta dinâmica por meio de DNS é essencial. Como um cache HTTP, o NGINX Plus protege a plataforma do CANAL+, que apenas altera a URL de um conteúdo quando o título muda. 

A flexibilidade e escalabilidade do NGINX Plus ajudaram o CANAL+ a atender ao aumento da demanda durante a pandemia. “Certamente precisávamos dimensionar nossa infraestrutura e o NGINX nos permitiu fazer isso”, diz James Mensah, líder de equipe, editorial de dados e recomendações. “Aumentamos um pouco o número de instâncias e roteadores NGINX.”  

Inicialmente, o myCANAL foi implantado na França, mas desde então foi expandido para outros países, usando o mesmo código, mas com instâncias diferentes para cada mercado. O CANAL+ agora oferece myCANAL na Polônia, Itália e grande parte da África. “O NGINX é uma grande parte da expansão internacional porque usamos a capacidade de roteamento para rotear para a plataforma correta conforme implantamos uma plataforma para cada país”, explica Mensah. “Temos um conjunto de roteadores, com os roteadores NGINX no topo, e roteamos com base em alguns cabeçalhos que mostram de onde o usuário está vindo.”  

Ele diz que o CANAL+ implementou “muita lógica em nosso arquivo de configuração NGINX para decidir para onde a solicitação deve ir, porque temos muitas plataformas. Foi muito poderoso para nós podermos escrever algum código, então se esse cabeçalho tem esse valor, e então ter um mapa que roteia a solicitação com base no cabeçalho.” O CANAL+ não precisou usar o serviço de suporte da F5, pois a documentação detalhada do NGINX Plus fornece toda a orientação necessária. 

Os recursos de roteamento do NGINX também dão suporte à migração para uma nova plataforma myCANAL, que só pode ser acessada com dispositivos com os recursos corretos. “[Precisamos] migrar os usuários progressivamente com base em seus dispositivos… e estamos no controle da migração com a configuração do NGINX”, explica Mensah. Tudo o que a equipe precisou fazer foi adicionar regras à configuração do NGINX que roteassem os usuários com base no dispositivo que eles estavam usando, conforme registrado nos cabeçalhos de solicitação. Usuários em dispositivos qualificados são roteados para a nova plataforma, enquanto outros usuários continuam acessando a plataforma atual. 

O CANAL+ também está fazendo uso cada vez maior de clusters Kubernetes, suportados pelo F5 NGINX Ingress Controller. “No início do projeto, há cinco anos, usávamos apenas instâncias padrão [AWS] EC2”, observa Mensah. “Mas agora estamos implantando nossos aplicativos em contêineres Kubernetes cada vez mais.” 

Ele diz que essa arquitetura nativa da nuvem é altamente escalável. “Podemos aumentar a qualquer momento e muito rapidamente”, explica Mensah. Embora a manhã geralmente seja tranquila, as pessoas recorrem ao aplicativo myCANAL durante o dia, com pico de demanda entre 20h e 21h. “Portanto, temos aqueles momentos muito específicos em que sabemos que precisamos escalar”, acrescenta Mensah. “Precisamos de quase o dobro do número de algumas instâncias para algumas aplicações. Mas quando não precisamos das instâncias, não queremos pagar por elas, então é por isso que usamos a nuvem.” 

O CANAL+ continua se expandindo geograficamente, ao mesmo tempo em que adiciona novos recursos à sua plataforma. O objetivo é fornecer aos espectadores recomendações de conteúdo de terceiros, além do seu próprio, por exemplo.

Resultados

Arquitetura robusta e de baixo custo

A confiabilidade e a escalabilidade do NGINX Plus permitem que o CANAL+ use relativamente poucos servidores para processar até 50.000 solicitações por segundo. Isso permite que o CANAL+ contenha sua pegada AWS, economizando dinheiro.

Tempos de Resposta Rápidos

O cache HTTP escalável permite que o myCANAL responda consistentemente à solicitação de um usuário para acessar o conteúdo quase imediatamente (em menos de 1,5 segundos), garantindo assim uma experiência de usuário atraente.

Métricas e Insights

O NGINX Plus fornece ao CANAL+ a visibilidade de seus roteadores e caches necessária para executar análises de dados e, então, refinar suas implantações adequadamente. O CANAL+ usa o software de observabilidade Datadog, que é integrado ao NGINX. Graças ao NGINX Plus, o CANAL+ pode rastrear e monitorar as etapas de navegação de seus clientes, suas visualizações de página, seus cliques em vídeos e outros dados valiosos de uso.

Veja todas as histórias de clientes

 

Logotipo da Vodafone
Benefícios
  • A escalabilidade robusta do F5 NGINX Plus permite que o CANAL+ use relativamente poucos servidores para processar até 50.000 solicitações de conteúdo por segundo
  • A flexibilidade do NGINX Plus permitiu que o Canal + dimensionasse sua infraestrutura durante o pico de uso, contendo sua pegada de nuvem e economizando dinheiro
  • Forneceu visibilidade fácil em roteadores e caches que o Canal + precisa para executar análises de dados e refinar suas implantações

Desafios
  • O CANAL+ viu um grande aumento na demanda por seus serviços de streaming de TV durante a pandemia, colocando maiores demandas em sua arquitetura técnica 
  • Seus serviços de vídeo sob demanda precisam ser ampliados massivamente durante os horários de pico de exibição, normalmente entre 20h e 21h30
  • Sua plataforma fornece acesso a mais de 100.000 peças de conteúdo somente na França, em vários formatos e resoluções, aumentando ainda mais a complexidade do roteamento e do cache

Produtos