La nouvelle a suscité beaucoup d'intérêt et de commentaires. Je vous propose donc de faire un retour sur cette collaboration, très étroite, entre Sensio Labs et les
équipes de Dailymotion.
C’est
d’abord une nouvelle référence marquante pour Symfony dont peut se
féliciter l’équipe de Sensio Labs. Mais au-delà du choix de Dailymotion, c’est le
modèle de développement du framework, focalisé sur les besoins des professionnels,
qui trouve tout son sens.
Symfony
apporte en effet, une réponse dans le développement d’applications stratégiques
d’entreprises, basées sur le langage PHP. Largement adopté par les
professionnels pour standardiser leurs applications,il rencontre
aujourd’hui un succès international. Les avancées technologiques introduites
par Sensio Labs sont souvent liées aux problématiques de ses clients. A
l’instar de Dailymotion, certains clients sont étroitement impliqués dans les
choix stratégiques permettant de faire évoluer le framework.
Un leader mondial doit s’appuyer sur
des technologies standard
Dailymotion
est l’un des 60 sites les plus populaires du monde[1]. Il
repose sur une plateforme technique créée en 2005 et écrite en PHP. Pour la faire fonctionner, l’équipe dédiée d’une
dizaine de développeurs, a d’ailleurs progressivement développé un framework
"maison".
Au milieu de l'année 2008, la
décision a été prise d'abandonner le framework "maison" au profit
d'un framework Open-Source pour deux principales raisons:
·
Maintenir
un framework nécessite énormément de moyens (ajouter de nouvelles
fonctionnalités, les documenter, former les nouveaux développeurs, conserver
une cohérence);
·
Permettre
aux équipes de se concentrer sur leur cœur de métier pour maintenir le rythme
des évolutions.
Olivier Poitrey,l'un
des co-fondateur set Directeur technique de Dailymotion,résume
les principaux avantages de la migration vers un framework:
·
Ne
pas réinventer la roue
Maintenir
moins de code
·
Meilleur
conformité aux conventions de codage
·
Mise
en place plus facile des bonnes pratiques comme les tests unitaires et
fonctionnels
Parfaitement
rompu aux problématiques des professionnels, Symfony a tout naturellement été
choisi par Dailymotion:
·
Le
framework disposait d’une expérience éprouvée sur des sites à très forte
fréquentation (Yahoo!);
·
Sa
souplesse facilitait la migration;
·
Symfony
est l’un des frameworks les plus populaires du monde PHP et dispose d’une large
communauté.
Réussir une migration en douceur
Le chantier
n‘était pas évident. Il fallait permettre aux développeurs de Dailymotion de
migrer pas à pas la plateforme existante vers la nouvelle plateforme sous
Symfony sans interrompre le rythme d’ajout des nouvelles fonctionnalités.
En effet,
le service marketing est très dynamique et demande d’ajouter de nouvelles
fonctionnalités, quotidiennement. Réécrire complètement le site web était donc
hors de question. L’approche modulaire de Symfony a permis d’introduire les composants
par petites doses et d’éviter d’introduire des régressions.
Dans une
première phase, Symfony «enveloppe» le code de la plateforme existante.
Le framework traite les requêtes, les redistribue à la plateforme Dailymotion,
récupére les réponses, et les envoie au navigateur des internautes. Mi-février
2009, après plusieurs mois de travail, la migration complète a
été effectuée avec succès.
Fort de ce
succès, de plus en plus de composants du framework sont aujourd’hui introduits
dans la plateforme Dailymotion.
Dailymotionen
chiffre
Que savoir sur les détails
essentiels de l'architecture de Dailymotion ?Voici quelques
chiffres intéressants:
50 serveurs PHPpour 5000 pages PHP
par second
17 serveurs base de données
30 serveurs mem cache pour un total
de210 Gb de stockage mémoire
60 Gb/sde bande passante
1.2 petabytes de stockage
Tout ceci ne tient pas
compte des machines qui encodent la vidéo et de celles qui hébergent le moteur
de recherche.Au total, c’est plus de 430 machines qui font tourner
le site!
Pour en savoir plus:
http://sf-to.org/dailymotion
[1]En Décembre 2008, plus de 41,9 million de visiteurs uniques se sont rendu sur le site. Ils ont regardé plus de 922 million de vidéos (source: comScore, December 2008). Dailymotion est aussi le numéro 2 des sites français dans le monde.