Des millions de visiteurs avec France Télévision
Transcription
Des millions de visiteurs avec France Télévision
Des millions de visiteurs avec France Télévisions Bonjour à tous… Pascal Beynel Léo Poiroux Au programme… > France Télévisions Editions Numériques > A la recherche d’un nouveau CMS > Industrialisation avec Drupal > Problématiques et solutions > Conclusion Les chaînes Les filiales Les chaînes thématiques France Télévisions Editions Numériques France Télévisions c’est… > le 1er groupe audiovisuel français Chaque jour 4 français sur 10 regardent nos programmes > un chiffre d’affaires net de 3 016,1 M€ (2009) > + de 11000 collaborateurs mais parlons plutôt de… France Télévisions Editions Numériques France Télévisions Editions Numériques > Conception, développement, maintenance et animation des services et produits numériques du groupe (Sites, applications smartphones et tablettes, TV connectées) > Télématique / audiotel > Offres vidéos sur Box Adsl (Orange et Free) > Animation sur les réseaux sociaux France Télévisions Editions Numériques > 140 collaborateurs (dont 40 à la technique) > environ 1300 sites Internet > 225 millions de pages vues par mois (octobre 2011) > 36 millions de visites par mois > 8 millions de visiteurs uniques par mois > 1 million d’applis iPhone/iPad téléchargées > 21 millions de vidéos vues par mois sites Internet, Pluzz Orange/Free et pluzz.fr France Télévisions Editions Numériques France Télévisions Editions Numériques A la recherche d’un nouveau CMS A la recherche d’un nouveau CMS Chronologie des CMS A la recherche d’un nouveau CMS Nos projets Drupal Drupal 6 > Documentaires France5 (documentaires.france5.fr) > Portail SPORT (sport.francetv.fr) > Portail Santé France5 (www.france5.fr/sante) Drupal 7 > Election présidentielle de 2012 (www.francetv.fr/2012) A la recherche d’un nouveau CMS Objectifs (1/2) > Définir un référentiel par thématique intégrant ses besoins métiers et son workflow (sous objectif : abandonner notre principal référentiel de contenus multi-thématiques). > Moderniser les outils de contribution : produit simple, rapide, ergonomique, paramétrable et dont la prise en main est intuitive. > Moderniser la production technique des produits : s’appuyer sur des fonctionnalités avancées (back et front) et les partager au besoin entre nos différents produits. A la recherche d’un nouveau CMS Objectifs (2/2) > Challenger les équipes internes : intégrer un nouveau produit / une nouvelle compétence en moins de trois mois. > Réduire le cycle de vie des produits > A long terme, s’industrialiser : simplifier la maintenance, la mise à jour, le déploiement, les tests unitaires, les tests de montée en charge … A la recherche d’un nouveau CMS Nos contraintes (1/2) > Exploiter un produit open-source, testé, éprouvé, réputé (pour bénéficier de l’assurance que le projet perdurera dans la durée et que des compétences existent sur le marché) et pouvant subir de fortes charges. > Exploiter un produit répondant aux attentes d’une population de contributeurs très hétérogène avec des besoins métiers très spécifiques et dispersée géographiquement. > Limiter les développements aux fonctionnalités métiers spécifiques à FTV et s’appuyer sur des développements communautaires pour le reste. A la recherche d’un nouveau CMS Nos contraintes (2/2) > Possibilité d’interconnexion avec des services FTV existants. > Intégration dans une plateforme « classique » (environnement LAMP) pouvant difficilement évoluer (contrainte de l’hébergeur). > Contraintes multi CDN (Akamai, Cotendo, Level3) A la recherche d’un nouveau CMS Diverses fonctionnalités attendues > Gestion multi-sites > Type de contenus personnalisés > URL rewriting automatique > Programmation de publication / dépublication de contenus > Gestion de la syndication / sitemap et ingestion de contenus syndiqués > Médiathèque > Gestion avancée du cache (contraintes CDN) > Intégration / création de modules > Workflow > Historique des contenus > Prévisualisation > RTE, optimisations automatiques, calendrier, charset configurable, monitoring, gestion des statistiques, gestion des supports, recherche, commentaires, archivage, … A la recherche d’un nouveau CMS Analyse des outils existants sur le marché > Sur la base des objectifs, contraintes et fonctionnalités attendues, nous avons fait appel à une société qualifiée (AlterWay) pour étudier les principaux produits du marché de l’époque : Drupal, EZ Publish et Typo3 > Typo 3 a été tout de suite écarté car trop éloigné des objectifs (produit plutôt usine à gaz et en perte de vitesse) > Émission d’un rapport d’étude exprimé en terme de points de complexité sur la base de 45 fonctionnalités identifiées devant être intégrées à terme dans le produit. A la recherche d’un nouveau CMS Drupal gagnant haut la main ! A la recherche d’un nouveau CMS Mise en place de la solution (1/3) (ou comment mettre un POC en production) Une fois Drupal choisi, nous avons sélectionné un projet qui devait faire office de POC. Le projet de refonte du portail SPORT alors à l’étude nous est apparu comme le meilleur candidat. En définitive, le POC devait être suffisamment aboutit pour pouvoir être mis en production. > Sécuriser le projet : prestation d’accompagnement (AlterWay) > Afin de faire adopter Drupal au sein des équipes, organisation d’une présentation avancée grâce à une formation sur mesure de 2 jours (équipe de la production et de l’exploitation) > Constitution d’une équipe d’un CDP AMOA / MOE, d’un développeur expérimenté et d’un développeur interne novice. A la recherche d’un nouveau CMS Mise en place de la solution (2/3) (ou comment mettre un POC en production) > Un démarrage un peu long : MOA faible et (trop) changeante > Aboutissement d’un CDC au bout de 3 mois avec des parties du projet non définies / non stabilisées. > Intégration de méthodologie de type agile pour aboutir rapidement à un résultat (objectif 3 mois pour produire le projet de bout en bout : graphisme, intégration, définition de l’architecture et des environnements, développement, recette, tests de charge, validation cache CDN, MEP, …). > A l’issu des 3 mois, les objectifs étaient en grande partie atteints (absence des fonctionnalités mineures et quelques majeurs mais faisant défaut à Drupal). A la recherche d’un nouveau CMS Mise en place de la solution (3/3) (ou comment mettre un POC en production) > A l’issu de ces 3 mois, intégration d’une nouvelle composante : la gestion des événements sportifs (Roland Garros, Tour de France, …) > Mobilisation d’un CDP interne et d’un intégrateur / développeur interne pour gérer le site de Roland Garros. > Grâce aux modules « domains », aux thèmes et à l’héritage des fonctionnalités de base du portail SPORT, le site a pu être produit en 3 semaines (offre plutôt complexe : intégration de nombreux flux de partenaires, gestion de diffusion en direct, produit à forte charge, astreintes à organiser, …) A la recherche d’un nouveau CMS 18 mois après > Drupal 6 a su répondre à nos principales attentes. > Malgré tout, quelques grosses insatisfactions : > Lenteurs du produit. Drupal a besoin de mémoire et de CPU. Plateforme trop ancienne et pas à la hauteur. > Actuellement pas de memcache : saturation côté base de données (du à la gestion du cache par défaut en base) et pas d’alternative possible (déport éventuel sur un filer non possible car également saturé). > Intégration de médias dans le RTE problématique > Les requêtes de views non optimisées A la recherche d’un nouveau CMS Des événements d’ampleur… > Drupal 6 gère depuis le 1er Mai 2009 le portail sport mais a également été éprouvé sur tous les événements sportifs suivants : > Dakar > 24 heure du Mans > Roland Garros > Tour de France > Route du Rhum > Tournois des 6 nations > Coupe du Monde de football et rugby > Championnats du monde de ski et d’escrime > Championnats d’europe d’athlétisme et de natation > Depuis nous avons mis en place un portail Santé pour France5, regroupant les 3 programmes « Allô Docteur », « le Mag de la Santé » et « Enquête de santé » A la recherche d’un nouveau CMS Drupal 7… et pourquoi pas ? En 2011, de nombreux facteurs nous ont permis de partir rapidement dans l’aventure Drupal 7 et d’associer à ces projets nos envies d’instaurer de nouveaux process d’industrialisation au sein de nos équipes techniques. A la recherche d’un nouveau CMS Industrialisation avec Drupal 7 Industrialisation avec Drupal 7 Facteur 1 : Hébergement Début 2011, Oxalide remporte l’appel d’offre sur la prestation d’hébergement. Notre ancien hébergeur n’était pas en mesure de prendre en charge rapidement des produits sous Drupal 7. > Infrastructure vieillissante > Pas de PHP 5.3 > Manque d’expérience de cette version Industrialisation avec Drupal 7 Facteur 2 : Nouvelle offre d’infos > En avril 2011, la direction des Editions Numériques monte une nouvelle équipe MOA pour effectuer la refonte de l’offre d’information en ligne de France Télévisions > Cette offre étant une priorité du groupe, des moyens nous ont donc été alloués pour créer des équipes technique dédiées. Industrialisation avec Drupal 7 Facteur 3 : Expérience Drupal 6 > Après 2 ans d’utilisation de Drupal 6. L’équipe technique était suffisamment montée en compétence pour envisager d’évoluer vers Drupal 7 > Nous avions confiance dans la robustesse du produit, suite aux bonnes audiences des événements sportifs comme Tour de France (17M visiteurs uniques sur 3 semaines) ou Roland Garros (9M visiteurs uniques sur 15 jours). > De plus, les retours des équipes éditoriales sur l’utilisation du produit étaient très positives Industrialisation avec Drupal 7 Election présidentielle 2012 > Le site de l’élection présidentielle 2012 (www.francetv.fr/2012) a été le projet pilote pour mettre en place des process d’industrialisation au sein des équipes techniques. Les points forts de ce projet : > Une MOA structurée avec un cahier des charges complet et précis > Demande éditoriale simple nécessitant peu de modules issus de la communauté > Une volonté de créer un produit indépendant n’ayant pas besoin des outils déjà développés par FTVEN > Déclinaison rapide du produit pour la refonte de CultureBox et Géopolis > Produit qui va générer forcément beaucoup d’audience > Une demande de livraison très rapide (!) Industrialisation avec Drupal 7 Planning de production Industrialisation avec Drupal 7 Outils pour la gestion de projet Mise en place d’un Redmine > Fonction Ticketing durant le recettage et désormais en tant que bugTracker > Fonction Wiki pour le partage de documents > Fonction Gantt pour partager le planning avec l’ensemble des intervenants FrameWork Axure > La MOA nous a fourni un zoning navigable très complet où chaque comportement étaient précisément décrits. Xmind > Outil très apprécié par la MOA et les développeurs pour visionner la structure de données à mettre en place Industrialisation avec Drupal 7 Xmind Industrialisation avec Drupal 7 Versioning et déploiement Remplacement de SVN par GIT > Pour ce projet, nous avons mis en place un système de versioning GIT plutôt que SVN (utilisé jusqu’à présent à FTVEN) Utilisation des branches pour le déploiement > Grâce à Capistrano, nous pouvons déployer notre projet sur deux environnements « Préprod » et « Prod ». Chaque environnement correspondant à une branche du dépôt GIT. Modules Features et Strongarm > Afin de bannir toute configuration à la main sur les environnements de « Préprod » et « Prod » Industrialisation avec Drupal 7 Problématiques et solutions A la recherche d’un nouveau CMS Gestion des médias > La gestion des médias reste complexe au sein de Drupal. > Pour le moment, les photos et les vidéos sont des types de contenus. Cela impose d’utiliser les « node-reference » et le module « Références Dialog » > Nous étudions actuellement le module « Médias » qui ne répondait pas à tous nos besoins en juillet. A la recherche d’un nouveau CMS Accumulation des caches Afin de faire face au fort trafic que génère ces sites, nous cumulons les systèmes de cache. > Cache distinct pour chaque « Bloc Drupal » et pour chaque « Views » > Cache global à tout le site > Agrégation des JS et CSS > Configuration précise d’un Varnish > Distribution du contenu via le CDN Akamai > Plateforme Oxalide permettant 100 000 visiteurs / heure sans cache A la recherche d’un nouveau CMS Gestion de la contribution > La mise en place d’un CDN, nous impose de créer une seconde adresse pour nos propres contributeurs. > Cette adresse privée permet aux journalistes d’accéder au site sans aucun cache. > Développement d’un module pour corriger tout « copiercoller » malencontreux de cette adresse dans les articles A la recherche d’un nouveau CMS Conclusion A la recherche d’un nouveau CMS L’avenir de Drupal à FTVEN > Gestion des 24 sites régionaux et du portail « France3 Régions », ainsi que des 9 sites Outremer et leur portail. > Sites « Séries et fictions » > Sites génériques de programmes par genre > Refonte du portail Sport pour les JO 2012 Le but : remplacer environ 500 sites SPIP A la recherche d’un nouveau CMS Des questions ? A la recherche d’un nouveau CMS