> Tech > Java sur iSeries (2)

Java sur iSeries (2)

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

La nature interprétée du langage Java pénalise la performance à  l'exécution. C'est pourquoi il est important d'écrire un code Java très efficace quand la performance à  l'exécution est critique. Outre les techniques d'optimisation des programmes Java neutres vis-à -vis des plates-formes, la plupart des plates-formes serveur offrent leur propre complément d'optimisation.

Java sur iSeries (2)

Au stade de la V4R4, il existe deux options
pour l’optimisation de l’exécution
runtime.

Le java transformer est une partie
de la JVM qui permet le prétraitement
des fichiers classe, jar ou zip Java et
crée un objet programme optimisé qui
est associé au code Java. L’objet programme
optimisé contient des instructions
machine RISC 64 bits compilées
qui s’exécutent sans interprétation par
la JVM. (Ce procédé est souvent appelé
exécution directe.) Les objets programme
directs sont persistants : ils ne
doivent être créés qu’une fois.

Le support JIT (just-in-time) est apparu avec la V4R4. Avec le compilateur
JIT, la JVM effectue une compilation
just-in-time pour tout objet Java qui n’a
pas déjà  été transformé. Dès lors qu’un
objet a été soumis à  la compilation JIT,
sa performance est très voisine de celle
des objets transformés. Les objets
créés avec le JIT ne sont pas persistants
: ils n’existent que pendant la vie
de l’application.

Quand le compilateur JIT est
apparu pour la première fois sur
l’iSeries, le Java Transformer offrait des performances supérieures. Depuis la
V4R5 (et encore plus en V5R1), le JIT
est aussi performant que le Java
Transformer. En V5R1, la performance
de l’optimisation JIT est équivalente à 
l’utilisation du Java Transformer à  un
niveau d’optimisation compris entre
30 et 40, 40 étant le maximum.

L’utilisation de JIT étant transparente,
vous n’avez rien à  faire.
Toutefois, pour utiliser l’exécution directe,
quelques actions discrètes sont
nécessaires. Comme la performance
de JIT est presque égale à  l’exécution
directe et qu’elle ne demande pas de
travail supplémentaire, utilisez plutôt
JIT. Par défaut, WAS utilise l’optimisation
JIT de préférence à  l’exécution directe.
Cela est contrôlé par le réglage
java.compiler par défaut dans le fichier
admin.properties WebSphere. Vous
pouvez changer WAS pour utiliser
l’exécution directe.

Sur l’iSeries, les programmes Java
s’exécutent dans un environnement légèrement
différent de celui des programmes
ILE. Comme les programmes
Java sont multithreaded par nature, ils
doivent s’exécuter dans des jobs BCI
(Batch Immediate). Cela a des implications
pour la gestion du travail.

Téléchargez cette ressource

Les mégatendances cybersécurité et cyber protection 2024

Les mégatendances cybersécurité et cyber protection 2024

L'évolution du paysage des menaces et les conséquences sur votre infrastructure, vos outils de contrôles de sécurité IT existants. EPP, XDR, EDR, IA, découvrez la synthèse des conseils et recommandations à appliquer dans votre organisation.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010