Professional Documents
Culture Documents
]
P
g
M
!""#"
/&&"""&%&!&%
M
Plan
1. Introduction à la mesure de performance
2. Stress Test avant tuning
a. Cas de test
b. Dimensionnement (serveur)
c. Résultats
3. Optimisation de JBoss EAP 5.1
a. Supprimer le non utilisé par votre application
b. Configuration de log4j
c. Configuration de la mémoire JVM
d. Configuration de la data source
e. Configuration de la connexion HTTP
4. Stress Test après tuning
5. Conclusion
1. Introduction à la mesure de performance
Les stress test ou test de monté de charge consiste à simuler un grand nombre
dƞutilisateurs qui exploitent simultanément votre application.
Notre but via ce test et dƞétudier si votre application qui est supposé déployé sur le
serveur | répondait réellement à vos besoins (nombres dƞutilisateurs
supporté, ressources matérielles, consommation bande passanteƦ). Pour ce la on
dispose dƞun très bon outil de mesures de performances et stress test appelée
| | disponible sous le répertoire outillage du CD de formation.
2. Stress Test avant tuning
Présentation
le maximum le
cƞest le temps écoulé pendant que lƞutilisateur clique sur un
bouton et la page (résultat) sera affichée par le navigateur.
!
le maximum "
( ).
#"
$ %Cƞest le nombre de transactions qui peuvent se
produire dans un laps de temps donnée, il est normalement mesuré en
transactions par seconde (tps).
2. Stress Test avant tuning
a. Cas de test
Notre objectif est de simuler une masse dƞutilisateurs qui appellent le point
dƞentré de notre lƞapplication helloworld à lƞadresse r &&' (
)*+*+&, & -
En accédant à cette adresse le client (browser) envoie au serveur JBoss une
requête ./
( utilisateur qui fera ++ invocations consécutives.
( 01 utilisateurs qui feront au même instant ++ invocations
consécutives,.
( 21 0 utilisateurs qui feront au même instant ++ invocations
consécutives.
2. Stress Test avant tuning
b. Dimensionnement (serveur)
01
- "
$ %18 Tps
- 0%
- 4260ms
01
- "
$ % 19Tps
- 0%
- 41260 ms
3. Optimisation de JBoss EAP 5.1
a. Supprimer le non utilisé par votre application:
9
1
95
3. Optimisation de JBoss EAP 5.1
6
8
| 0&2
( deploy&ejb3-connectors-jboss-beans.xml
- deploy/ejb3-container-jboss-beans.xml
- deploy/ejb3-interceptors-aop.xml
- deploy/ejb3-timerservice-jboss-beans.xml
- deploy/ejb2-container-jboss-beans.xml
- deploy/ejb2-timer-service.xml
- deployers/jboss-ejb3-endpoint-deployer.jar
- deployers/ejb3-deployers-jboss-beans.xml
6
8
|3
- deploy/juddi-service.sar
6
8
33
- deploy/ uuid-key-generator.sar
3. Optimisation de JBoss EAP 5.1
6
8
|6$| 6
%:
6
( conf/props/messaging-roles.properties
- conf/props/messaging-users.properties
- deploy/messaging
- deploy/jms-ra.rar
- deploy/quartz-ra.rar
- deployers/ messaging-definitions-jboss-beans.xml
- conf/jbossts-properties.xml
<property name="com.arjuna.ats.jta.recovery.XAResourceRecovery.JBMESSAGING1"
value="org.jboss.jms.server.recovery.MessagingXAResourceRecovery;java:/DefaultJMSProvider"/>
</properties>
3. Optimisation de JBoss EAP 5.1
6
8
|
:
- deploy/mail-service.xml
- deploy/mail-ra.rar
6
8
| 6
:
- deploy/schedule-manager-service.xml
- deploy/scheduler-service.xml
6
8
.4
:
- deploy/hsqldb-ds.xml
6
4
- deployers/bsh.deployer
9$.4%
6
deploy/hdscanner-jboss-beans.xml
3. Optimisation de JBoss EAP 5.1
6
8
| 76$| 7"
%:
- conf/jax-ws-catalog.xml
- conf/props/jbossws-roles.properties
- conf/props/jbossws-users.properties
- depolyers/jbossws.deployer
6
8 ; , | 6:
- deployers/seam.deployer
- deployers/webbeans.deployer
- deployer/admin-console.war
6
8 <"
8
<
6
- deployer/admin-console.war
3. Optimisation de JBoss EAP 5.1
6
8
& ":
6
- deploy/jacorb.properties
- deploy/ iiop-service.xml
- deployers/ejb3.deployer/META-IN]/ ejb3-iiop-deployers-jboss-beans.xml
- lib/jacorb.jar
conf/jndi.properties
java.naming.factory.initial=org.jboss.iiop.naming.ORBInitialContext]actory
java.naming.factory.initial=org.jnp.interfaces.NamingContext]actory
3. Optimisation de JBoss EAP 5.1
6
8
$
9
%
- deployers/deploy/jboss-xa-jdbc.rar
- deploy/xnio-provider.jar
8 <"
:6
- ./deploy-hasingleton
- ./farm
- deploy/cluster
Editer : conf/bootstrap/profile.xml
<property name="farmURIs">
<list elementClass="java.net.URI">
<value>${jboss.server.home.url}farm</value>
</list>
</property>
3. Optimisation de JBoss EAP 5.1
6
8
$
9
%
- deployers/deploy/jboss-xa-jdbc.rar
- deploy/xnio-provider.jar
8 <"
:6
- ./deploy-hasingleton
- ./farm
- deploy/cluster
Editer : conf/bootstrap/profile.xml
<property name="farmURIs">
<list elementClass="java.net.URI">
<value>${jboss.server.home.url}farm</value>
</list>
</property>
3. Optimisation de JBoss EAP 5.1
b. Configuration de log4j
La configuration par défaut du log est déconseillée en mode production, nous voulons
seulement que les erreurs soient loggées.
?
<root>
<priority value="ERROR"/>
<appender-ref ref="]ILE"/>
</root>
3. Optimisation de JBoss EAP 5.1
c. Configuration de la mémoire JVM:
å
"@|AB6
"
&
(C'
<): taille (en Mo) minimum de la mémoire alloué: min-heap
(C!'
<): taille (en Mo) maximum de la mémoire alloué: max-heap
Xms et Xmx doivent avoir la même valeur en production pour notre configuration.
Le choix de cette valeur nƞest pas au hasard, il faut quƞil soit bien étudier selon le
nombre dƞapplications déployées, ressources utilisées etcƦ
(CC! 6
< : Il est recommander que cette valeur soit le 1/4 de max-heap.
3. Optimisation de JBoss EAP 5.1
d. Configuration de la data source:
-
((
<Cƞest le nombre initial de connexions à la BD
qui peuvent être gardées.
- !((
<Cƞest le nombre maximale de connexions
concurrentes à la BD. Cette valeur doit être répondre aux besoins
de votre application et respecte le paramétrage de votre SGBD
3. Optimisation de JBoss EAP 5.1
e. Configuration de la connexion HTTP:
Éditer le fichier 4&="," & !, les
paramètres les plus importants sont :
!
01
- "
$ %00vs 18 Tps
- +F
- 402+ vs 260 ms
21
- "
$ % 00vs 19 Tps
- +F
- 4+Gvs 1260 Tps
5. Conclusion
On remarque que lƞoptimisation de | à jouer son rôle pour
augmenter les performances et même si quƞon a pu atteindre que +Fà 0Fde
dƞefficacité avec une simple application et un environnement minime, avec dƞautres
environnement plus puissants et des applications plus complexes le gain de
performances peut aller jusquƞà 2+F!
Une bonne pratique de test de performances est que vous devriez toujours essayer
de faire
ainsi que
puis comparer les
résultats obtenus et choisissez la plus adéquate à vos besoins !
!"
!
!"
#
!"
$ %