Création de plusieurs sites Drupal 7 avec 100 modules
Wellcome Trust est une organisation caritative de recherche biomédicale basée à Londres. Elle a été créée en 1936 pour financer des recherches visant à améliorer la santé humaine et animale. Wellcome Trust nous a engagés pour réaliser leur nouveau magazine scientifique en ligne, Mosaic, et nous savions que Drupal 7 était la solution idéale.
Notre mission
Mosaic est spécialisé dans les articles open-source de 5 000 mots et le contenu du site est consulté par des millions de personnes. Ce projet était important car Wellcome Trust envisageait d'utiliser Drupal comme plateforme potentielle pour d'autres sites. Nous représentions pour eux un test. Si Drupal fonctionnait, pouvait-il fonctionner avec le modèle de conception du Trust, et l'équipe interne pouvait-elle apprendre Drupal 8 suffisamment pour devenir indépendante ?
Il était essentiel que l'équipe interne maîtrise Drupal à la fin du projet. En tant que grande organisation s'engageant stratégiquement dans une technologie spécifique, vous ne voulez pas finir par dépendre d'agences externes.
Résultat
Le travail a été réalisé en grande partie par deux développeurs CE. L'équipe numérique de Wellcome a géré le projet, tout en étant formée. Nous avons documenté la construction pour que l'équipe puisse apprendre et nous avons fourni un site modèle pour qu'ils s'entrainent. Depuis, ils ont construit trois autres sites.
Vous pensez peut-être que la création de cinq sites Drupal 7 reste une tâche simple. Mais il s'agit de sites entièrement réactifs, utilisant 100 modules, construits par une équipe qui utilisait le contrôle de version dans un environnement d'intégration continue. De plus, ils travaillaient sur des Macs pour la première fois. Oh, et ils avaient l'habitude de créer des entités plutôt que de s'appuyer sur des nœuds. Maintenant, nous pensons que le Wellcome Trust possède désormais l'une des meilleures équipes Drupal internes de Londres.
Nous nous sommes intéressés aux aspects techniques et à la relation client sur ce projet, car il comportait une dimension de contenu qui le distinguait d'un travail purement technique. Le partage et l'adoption de techniques de gestion de projet ont été un grand plus.
Tests de performance
On nous a demandé d'effectuer des tests de performance sur le site Wellcome Trust Mosaic après la création du vrai contenu et de signaler les défaillances, les éventuels problèmes, en comparant les résultats avec ceux du test précédent effectué sur des données factices.
Nous avons utilisé le système de surveillance New Relic, qui était déjà installé sur les deux serveurs de production pour une surveillance détaillée pendant les tests.
Nous avons simulé un trafic anonyme sur le site, c'est-à-dire que les utilisateurs ne se sont pas connectés au site. Nous avons utilisé le même chemin de test que précédemment, mais nous avons remplacé les chemins fictifs par les chemins vers les données réelles (comme les histoires, les suppléments, les personnes, etc.).
- Page d'accueil
- Histoires
- Histoire - L'énigme d'Alzheimer
- Extra - Loose Threads (en anglais)
- Sujets
- Topics - Corps
- Histoire - Second avènement
- Personnes
- Utilisateur - Giles Newton
Nous avons ensuite effectué un certain nombre de tests sur l'application Drupal en utilisant le script JMeter et un produit appelé BlazeMeter, qui nous a permis de monter en charge et de simuler un trafic très élevé.
Le mécanisme interne de mise en cache des pages de Drupal était activé, ainsi que Memcached (pour le stockage du cache) et Varnish, un proxy inverse pour stocker les pages construites.
Dans l'ensemble, cependant, l'application a bien fonctionné lorsqu'aucune resource n'a été récupérée. Lorsque l'option de récupération de toutes les ressources intégrées a été activée, des dizaines de milliers d'erreurs se sont produites, probablement dues à un service externe tel que Twitter ou SVG.
Senior Developer
Travailler efficacement sur place n'est pas une évidence. Nous avons entendu parler de freelances qui ont attendu pendant des jours des éléments de base comme les connexions au réseau. Chez Wellcome, cela a fonctionné en partie parce que l'équipe numérique s'est vraiment engagée à apprendre Drupal, et qu'il y avait une gestion de projet en place.
Wellcome souhaitait travailler selon la méthodologie Agile-scrum. Il ne fait aucun doute que la présence d'un scrum master compétent chez le client fait une différence dans l'organisation d'une équipe composée de membres de l'agence et de membres internes.
Chris Maiden - Senior Developer