Le Groupe CANAL+, filiale de Vivendi, est un acteur majeur de la création et de la distribution de contenus dans le monde, avec près de 24 millions d'abonnés dans plus de 50 pays et 7 500 collaborateurs présents sur tous les continents. CANAL+ compte près de 10 millions d'abonnés en France et près de 7 millions en Afrique. C'est le premier opérateur de télévision en Afrique francophone et le premier actionnaire de MultiChoice, leader de la télévision payante en Afrique anglophone et lusophone.
CANAL+ est un acteur majeur dans la production et la commercialisation de chaînes de télévision, avec 116 chaînes linéaires et non linéaires produites en interne. Il regroupe également des chaînes thématiques majeures et des plateformes de contenu mondiales telles que Netflix, Disney+ et Paramount+.
Investissant près de 3,4 milliards d'euros par an dans les contenus, CANAL+ est un acteur incontournable de la programmation sportive (premier financeur en France pour le football et le rugby), du cinéma (premier financeur en France et en Pologne) et des séries (dont plus de 50 séries originales par an dans plus de 14 langues).
Avec l’appui de sa filiale STUDIOCANAL, qui possède 10 sociétés de production dans 7 pays européens, CANAL+ est le premier producteur et distributeur de longs métrages et de séries TV en Europe. Elle possède un catalogue de près de 7 000 titres provenant de plus de 60 pays. Enfin, c'est aussi un acteur incontournable du digital avec son application myCANAL, dont le déploiement international s'accélère, avec une présence sur une trentaine de territoires à ce jour.
Pendant la pandémie, CANAL+ a constaté une forte augmentation de la demande pour ses services de streaming TV, accessibles via la plateforme myCANAL via des décodeurs, des smartphones, des tablettes, des téléviseurs intelligents et des ordinateurs portables. La forte hausse des usages perdure au-delà de la fin de la pandémie et le trafic continue de croître, imposant des exigences accrues à l’architecture technique de CANAL+.
CANAL+ connaît des pics d'environ 50 000 requêtes par seconde sur ses caches HTTP. De plus, 60 % du trafic de ses services de replay arrive entre 20h30 et 21h15.
Parallèlement, myCANAL offre aux téléspectateurs toujours plus de choix en ajoutant des contenus provenant de Netflix, Disney+, Paramount+ et d’autres services tiers. En France, la plateforme myCANAL donne désormais accès à plus de 100 000 contenus. Au cours des dernières années, CANAL+ a également évolué pour proposer de plus en plus de vidéos en résolution 4K en plus de la HD standard. En plus d'augmenter le volume de trafic, cette évolution a augmenté le nombre de formats et la quantité de métadonnées que CANAL+ doit jongler.
Fournir une gamme aussi large de contenus provenant de différents acteurs augmente encore la complexité du routage et de la mise en cache. La plateforme doit proposer et recommander le bon contenu en fonction des intérêts et des privilèges de l’utilisateur, au bon moment, et selon et dans le cadre des contraintes légales imposées par les titulaires de droits.
Lorsqu'un téléspectateur interagit avec myCANAL, le système de diffusion de contenu basé sur le cloud de CANAL+ utilise des microservices pour effectuer des appels API qui récupèrent les métadonnées pertinentes sur le contenu, telles que le titre, l'épisode et les notes des critiques. Il utilise une technologie connue sous le nom de flux réactif, qui est utilisée pour traiter les pipelines de données en temps réel. Il utilise trois bases de données non SQL : Cassandra pour les opérations d'écriture en masse, Redis pour les opérations de lecture en masse et Elasticsearch pour tout ce qui est associé à l'indexation et au référencement croisé des données. Tout est hébergé sur Amazon Web Services (AWS).
CANAL+ utilise F5 NGINX Plus pour fournir un point d'entrée unique aux microservices myCANAL : NGINX Plus sert de routeur de requêtes de couche 7 et de cache HTTP, tout en permettant la découverte dynamique de microservices. En tant que routeur de requêtes de couche 7, NGINX Plus est chargé d'acheminer toutes les requêtes vers le microservice approprié. Étant donné que les microservices changent fréquemment leur adresse IP et leur port, la prise en charge de NGINX Plus pour la découverte dynamique via DNS est essentielle. En tant que cache HTTP, NGINX Plus protège la plateforme CANAL+, qui ne modifie l'URL d'un contenu que lorsque le titre change.
La flexibilité et l’évolutivité de NGINX Plus ont aidé CANAL+ à répondre à la forte demande pendant la pandémie. « Nous devions certainement faire évoluer notre infrastructure et NGINX nous a permis de le faire », explique James Mensah, chef d'équipe, rédaction de données et recommandations. « Nous avons légèrement augmenté le nombre d'instances et de routeurs NGINX. »
Initialement, myCANAL a été déployé en France, mais a depuis été étendu à d'autres pays, en utilisant le même code mais avec des instances différentes pour chaque marché. CANAL+ propose désormais myCANAL en Pologne, en Italie et dans une grande partie de l'Afrique. « NGINX joue un rôle important dans l'expansion internationale, car nous utilisons la capacité de routage pour acheminer vers la bonne plateforme lorsque nous déployons une plateforme pour chaque pays », explique Mensah. « Nous disposons d'un ensemble de routeurs, avec les routeurs NGINX en haut, et nous routons en fonction de certains en-têtes qui indiquent d'où vient l'utilisateur. »
Il dit que CANAL+ a implémenté « beaucoup de logique dans notre fichier de configuration NGINX pour décider où la requête doit aller, car nous avons de nombreuses plateformes. « C'était assez puissant pour nous de pouvoir écrire du code, donc si cet en-tête a cette valeur, puis avoir une carte qui achemine la requête en fonction de l'en-tête. » CANAL+ n’a pas eu besoin de recourir au service d’assistance de F5, car la documentation détaillée de NGINX Plus fournit tous les conseils dont il a besoin.
Les capacités de routage NGINX prennent également en charge la migration vers une nouvelle plateforme myCANAL, accessible uniquement avec des appareils dotés des capacités adéquates. « Nous [devons] migrer les utilisateurs progressivement en fonction de leurs appareils… et nous contrôlons la migration avec la configuration NGINX », explique Mensah. Tout ce que l’équipe avait à faire était d’ajouter des règles à la configuration NGINX qui acheminent les utilisateurs en fonction de l’appareil qu’ils utilisent, comme enregistré dans les en-têtes de demande. Les utilisateurs des appareils qualifiés sont dirigés vers la nouvelle plateforme, tandis que les autres utilisateurs continuent d'accéder à la plateforme actuelle.
CANAL+ fait également un usage croissant des clusters Kubernetes, supportés par F5 NGINX Ingress Controller. « Au début du projet, il y a cinq ans, nous utilisions uniquement des instances standard [AWS] EC2 », note Mensah. « Mais maintenant, nous déployons de plus en plus nos applications sur des conteneurs Kubernetes. »
Il affirme que cette architecture cloud native est hautement évolutive. « Nous pouvons évoluer à tout moment et très rapidement », explique Mensah. Alors que la matinée est généralement calme, les gens gravitent vers l'application myCANAL pendant la journée avec une demande maximale entre 20h et 21h. « Nous avons donc des moments très précis où nous savons que nous devons évoluer », ajoute Mensah. « Nous avons besoin de presque le double du nombre de certaines instances pour certaines applications. Mais lorsque nous n’avons pas besoin des instances, nous ne voulons pas payer pour cela, c’est pourquoi nous utilisons le cloud. »
CANAL+ poursuit son expansion géographique, tout en ajoutant de nouvelles fonctionnalités à sa plateforme. Son objectif est de fournir aux téléspectateurs des recommandations de contenu tiers, ainsi que le sien, par exemple.
La fiabilité et l’évolutivité de NGINX Plus permettent à CANAL+ d’utiliser relativement peu de serveurs pour traiter jusqu’à 50 000 requêtes par seconde. Cela permet à CANAL+ de contenir son empreinte AWS, économisant ainsi de l'argent.
Le cache HTTP évolutif permet à myCANAL de répondre systématiquement à la demande d’un utilisateur d’accéder au contenu presque immédiatement (en moins de 1,5 seconde), garantissant ainsi une expérience utilisateur convaincante.
NGINX Plus fournit à CANAL+ la visibilité sur ses routeurs et ses caches dont il a besoin pour effectuer des analyses de données et affiner ses déploiements en conséquence. CANAL+ utilise le logiciel d’observabilité Datadog, intégré à NGINX. Grâce à NGINX Plus, CANAL+ peut suivre et surveiller les étapes de navigation de ses clients, leurs pages vues, leurs clics sur les vidéos et d’autres données d’utilisation précieuses.
Voir tous les témoignages clients