Conseils de performances

Vous pourrez améliorer sensiblement les performances de XPath, XQuery et XSLT si vous suivez les conseils fournis ci-après.

Tableau 1. Conseils de performances. Suivez ces conseils pour optimiser les performances .
Langage Conseil
XPath Utiliser "//" peut se révéler coûteux. Utiliser un chemin plus explicite (comme a/b/c au lieu de a//c) peut améliorer les performances. Ceci est particulièrement vrai quand le chemin commence à la racine d'un document volumineux ou à proximité.
Dans la mesure où elle demande d'évaluer intégralement la séquence pour en dénombrer les éléments, la fonction last() peut s'avérer coûteuse.
Les prédicats positionnels à valeur constante, par exemple [3], sont généralement plus efficaces que ceux dont les valeurs sont calculées ou extraites depuis des variables.
XQuery Pensez à appeler la méthode registerImportedSchemas sur l'instance XQueryExecutable si la requête importe un ou plusieurs schémas et que la même requête sera exécutée plus d'une fois. Si registerImportedSchemas n'est pas appelée, les schémas importés seront chargés à chaque appel de l'une des méthodes execute. Par défaut, les schémas importés ne peuvent servir qu'à valider les arborescences de résultats, mais le fait d'appeler cette méthode a le même effet que d'enregistrer les schémas avec la XFactory, ce qui signifie qu'ils seront utilisés pour valider les documents en entrée.
XSLT L'accès aux paramètres est plus lent que l'accès aux variables. Si vous n'avez pas besoin de fournir la valeur d'un paramètre de façon externe, utilisez plutôt une variable.
Utiliser des éléments xsl:key avec la fonction key() peut constituer une manière efficace de récupérer des ensembles de noeuds.
La correspondance de chaîne modèles et la répartition de modèles appliqués fonctionnent en général plus vite que les instructions xsl:if ou xsl:when.
Utiliser des prédicats positionnels dans les modèles de correspondance est généralement coûteux.
En général, les modèles de correspondance simples, comme "address" sont plus faciles à traiter que les modèles complexes, comme "/purchaseorder/shipping/customer/postal/address". Servez-vous de votre connaissance de la structure du document et du comportement de votre feuille de style pour éviter les spécifications inutiles.
Avec certains modèles de données, vous devez exécuter l'opération xsl:skip-space pendant la navigation dans le document au lieu de l'exécuter pendant le chargement. Cela peut augmenter le temps d'exécution.
Pensez à appeler la méthode registerImportedSchemas sur l'instance XSLTExecutable si la feuille de style importe un ou plusieurs schémas et que la même feuille de style sera exécutée plus d'une fois. Si registerImportedSchemas n'est pas appelée, les schémas importés seront chargés à chaque appel de l'une des méthodes execute. Par défaut, les schémas importés ne peuvent servir qu'à valider les arborescences de résultats, mais le fait d'appeler cette méthode a le même effet que d'enregistrer les schémas avec la XFactory, ce qui signifie qu'ils seront utilisés pour valider les documents en entrée.
XPath, XQuery et XSLT Les opérations de codage et de décodage sont coûteuses. En général, les données codées en UTF-8 et UTF-16 sont lues et écrites plus rapidement qu'avec les autres systèmes de codage.

Icône indiquant le type de rubrique Rubrique de concept



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cxml_perf_tips
Nom du fichier : cxml_perf_tips.html