Paramètres de cache JNDI
Voici différents paramètres de cache Java™ Naming and Directory Interface (JNDI). Assurez-vous que toutes les valeurs de propriété sont des chaînes.
com.ibm.websphere.naming.jndicache.cachename
Le nom du cache à associer à l'instance de contexte initial peut être spécifié avec cette propriété.
Il est possible de créer plusieurs instances InitialContext, chacune fonctionnant sur l'espace de nom d'un serveur de noms différent. Par défaut, les objets de chaque adresse d'amorce sont mis en cache séparément, du fait que chacun d'eux fait intervenir un espace de nom indépendant et que des conflits de noms peuvent se produire s'ils utilisent le même cache. L'URL de fournisseur spécifiée lors de la création par défaut du contexte initial est utilisée comme base pour le nom du cache. Avec cette propriété, un client JNDI peut spécifier un nom de cache. Voici les options valides pour les noms de cache :
Options valides | Comportement de cache résultant |
---|---|
URL de fournisseur (par défaut) | Utilise la valeur de la propriété java.naming.provider.url comme base pour le nom de cache. Les noms de cache sont basés sur l'hôte et le port d'amorce spécifiés dans l'URL. L'hôte d'amorce est normalisé si possible en un nom complet. Par exemple, "corbaname:iiop:server1:2809#some/starting/context" et "corbaloc:iiop://server1" sont normalisés sur le même nom de cache. Si aucune URL de fournisseur n'est spécifiée, un nom de cache par défaut est utilisé. |
Toute chaîne | Utilise la chaîne spécifiée comme nom de cache. Toute chaîne arbitraire avec une valeur autre que "providerURL" peut être utilisée comme nom de cache. |
com.ibm.websphere.naming.jndicache.cacheobject
Activez ou désactivez la mise en cache et effacez le cache existant avec cette propriété.
Par défaut, lorsqu'un InitialContext est instancié, il est associé à un cache existant ou, s'il n'en existe pas, un nouveau cache est créé. Un cache existant est utilisé avec son contenu existant. Dans certaines circonstances, ce comportement n'est pas souhaitable. Par exemple, lorsque des objets recherchés changent fréquemment, ils peuvent se périmer dans le cache. D'autres options sont disponibles. Le tableau ci-dessous répertorie ces autres options avec la valeur de propriété correspondante.
Valeurs correctes | Comportement de cache résultant |
---|---|
Remplissage (par défaut) | Utilise un cache avec le nom spécifié. Si le cache existe déjà, ses entrées existantes sont conservées ; sinon, créez un nouveau cache. |
Effacement | Utilise un cache avec le nom spécifié. Si le cache existe déjà, effacez toutes ses entrées ; sinon, créez un nouveau cache. |
none | Pas de mise en cache. Si cette option est spécifiée, le nom de cache est inapproprié. De ce fait, cette option ne désactivera pas un cache déjà associé à d'autres instances d'InitialContext. Le InitialContext instancié n'est associé à aucun cache. |
com.ibm.websphere.naming.jndicache.maxcachelife
Impose une limite à la durée de vie d'un cache doté de cette propriété.
Par défaut, les objets placés en cache y restent pour la durée de vie du processus ou jusqu'à ce que le cache soit vidé par l'attribution de la valeur cleared à la propriété com.ibm.websphere.naming.jndicache.cacheobject. Cette propriété permet à un client JNDI de définir la durée de vie maximale d'un cache. Cette propriété diffère de la propriété maxentrylife car le cache tout entier est effacé lorsque la durée de vie du cache est atteinte. Le tableau suivant répertorie les différentes valeurs maxcachelife et leur effet sur le comportement du cache.
Dans les environnements où WebSphere Application Server est exécuté dans un cluster de plateformes réparties et où plusieurs systèmes de membre WebSphere Application Server for z/OS sont exécutés en tant que cluster, l'exécution de la reprise WLM (gestion de charge de travail) sur WebSphere Application Server for z/OS implique des ajustements des paramètres de cache. Les références IOR (Interoperable Object Reference) sur WebSphere Application Server for z/OS étant soumises à la gestion de la charge de travail, toute pause de WebSphere Application Server for z/OS entraîne la répartition de toutes les demandes vers le cluster WebSphere Application for z/OS restant. Lorsque la reprise du membre de cluster mis en pause est effectué, très peu de demandes (voire aucune) sont distribuées vers ce dernier ce qui entraîne un déséquilibrage du système. Bien que la plupart de ses ressources d'unité centrale soient disponibles, le membre reçoit peu (voir aucune) de demandes à traiter et, par conséquent, le traitement WLM normal n'est pas effectué après la reprise du système mis en pause.
Pour que l'équilibrage de charge se poursuive correctement il est nécessaire de définir un délai d'expiration du cache JNDI global raisonnable pour l'ensemble du serveur (par exemple, com.ibm.websphere.naming.jndicache.maxcachelife=3, qui fixe ce délai à 3 minutes).
Valeurs correctes | Comportement de cache résultant |
---|---|
0 (par défaut) | Rend la durée du cache illimitée. |
Entier positif | Cette valeur spécifie la durée de vie maximale du cache en minutes. Lorsque la durée de vie maximale d'un cache est atteinte, la tentative suivante de lecture d'une entrée du cache provoque sa suppression. |
com.ibm.websphere.naming.jndicache.maxentrylife
Impose une limite à la durée de vie d'entrées de cache individuelles dotées de cette propriété.
Par défaut, les objets placés en cache y restent pour la durée de vie du processus ou jusqu'à ce que le cache soit vidé par l'attribution de la valeur cleared à la propriété com.ibm.websphere.naming.jndicache.cacheobject. Cette propriété permet à un client JNDI de définir la durée de vie maximale des entrées individuelles du cache. Cette propriété diffère de la propriété maxcachelife car les entrées individuelles du cache sont régénérées individuellement lorsque leur durée de vie est atteinte. Cette approche peut éviter les problèmes de performances possibles en cas d'effacement de la totalité du cache en une fois. Le tableau suivant répertorie les différentes valeurs maxentrylife et leur effet sur le comportement du cache :
Valeurs correctes | Comportement de cache résultant |
---|---|
0 (par défaut) | Durée des entrées du cache illimitée. |
Entier positif | La valeur spécifiée indique, en minutes, la durée de vie maximale des entrées du cache. Lorsque la durée de vie maximale d'une entrée est atteinte, la tentative suivante de lecture de cette entrée dans le cache provoque sa régénération. |