Highscalability.com : Astuces de performance et scalabilité pour les architectes du Web
Voici un site très intéressant qui passionnera plus d'un d'entre vous. Il s'agit de Hightscalability.com, un site qui détaille les choix d'architecture des plates-formes sur le Web, tel que Twitter, Amazon, eBay ....
Les articles sont synthétiques et factuels, les éléments fournis dans les rubriques "Lesson Learned" sont vraiment très intéressants et recroisent énormément les problématiques que j'ai pu rencontrer sur des chantiers de performances.
Pour répondre à des besoins de scalabilité et de performance, il est indispensable de faire travailler des architectes dès le début d'un projet. Il faut prévoir la scalabilité de l'application dès le début de la conception, tout en prenant compte les contraintes techniques liées à l'hébergement, les contraintes de budget et les contraintes de ressources.
L'essentiel pour un architecte est de maîtriser les flux d'informations, de comprendre quelles données sont nécessaires à l'exécution des Use-case de l'application, quelle est la volatilité de ces données et les impacts qu'elles ont sur le service fourni à l'utilisateur. Une fois cette maîtrise, la seconde étape est de mettre en cache toutes les données qui peuvent être mises en cache.
Enfin, un autre point important est de mettre dès le début d'un projet les outils de mesure de performance et de détection d'erreurs afin qu'une évaluation des performances de l'application puisse être faite le plus tôt possible. L'autre point important est d'accompagner les équipes d'intégration afin qu'ils puissent évaluer la performance de l'ensemble de l'application.