|
> Base de connaissances
> A découvrir
> Dossiers thématiques
> Les plus lus cette année
> Forum Decideo Edition Open Source
|
Opinions
Tests de charge en Opensourcepar Yannig Perré, ingénieur Open Source chez simia
Il n'existe pas vraiment de produit clé en main pour réaliser des tests de charge. La solution réside dans un développement spécifique.
__Quel automate de test choisir ?__ JMeter : client java permettant de jouer des scénarios sur des applications Web (mais également sur des serveurs FTP, des webservices, des bases de données). Cet outil permet également de faire des reportings basics sur l'activité des machines (CPU, mémoire etc). Nous l'avons utilisé récemment avec l'équipe de développement d'un client pour qualifier une solution à base d'EJB (serveur Weblogic java, J2EE etc). Cette solution est maintenue par le consortium Apache. Pour en savoir plus : http://fr.wikipedia.org/wiki/JMeter QTest de Quotium pro : un dérivé d'OpenSTA. Nous avons utilisé cette solution pour le portail des comptes particuliers d'un groupe bancaire. Son avantage par rapport à JMeter se trouvera dans son niveau d'intégration. En revanche sa prise en main est beaucoup plus compliquée notamment au niveau de l'apprentissage du langage de script. Webload : un outil multi-plateforme de test de charge. __Mise en place d'un système de sonde.__ Seconde étape du processus, la prise des métriques est une étape importante qui permettra de valider ou non la solution mise en place. Deux solutions s'offrent à vous : vous tourner vers les sondes internes du produit de charge (qui donneront des informations simples) ou vers un produit dédié (Cacti, Nagios associé à des plugins d'historisation ou tout simplement Centreon). A noter que vous pouvez également vous tourner vers un système à base de script faisant des mesures régulières sur les métriques qui vous intéressent. __Outils spécifiques__ En vue d'une optimisation d'un produit spécifique (serveur d'application, base de données), vous aurez sûrement à faire appel à quelques outils spécifiques. En voici quelques exemples : - Mytop : trace les requêtes SQL consommatrice sur une base MySQL - Ptop : même chose pour la base PostgreSQL. - mod_status ou apachetop : Sonde apache traçant les requêtes les plus consommatrices. Dans le cas où vous auriez à utiliser des produits de surveillance comme Cacti ou Nagios/Centreon, il est possible de créer des plugins afin d'intégrer ces mesures directement au sein de ses produits. A noter que dans le cas d'apache ou des serveurs d'application, il est toujours possible de faire des statistiques à posteriori sur les fichiers access.log en passant par l'utilisation d'outil du type Webalizer (ou un de ses forks). Conséquence intéressante de cette démarche : il est tout à fait possible d'étudier le comportement d'un site Web à posteriori. Il sera donc possible de rectifier les prévisions de charge en fonction du delta existant entre la théorie (notre benchmark) et la réalité (le site web une fois en production). __Pour conclure__ Comme nous l'avons vu, il n'existe pas un produit miracle permettant de répondre à toutes vos questions. Il s'agit généralement d'un ensemble de bonne pratique associé à une connaissance des outils disponibles sur le marché. Dimanche 29 Mars 2009
Lu 4191 fois
Nouveau commentaire :
Opinions | Actualités, Etudes | En bref | Communiqués | Livres et documents | Lu dans la presse |
Dans ce dossier
|

