Configuration du cache de données HCL Commerce
Le cache de données HCL Commerce est activé par défaut. Vous pouvez configurer le cache à l'aide de l'une des deux méthodes de configuration possibles : mise en cache d'instructions ou définition d'objets DistributedMap. Pour obtenir de meilleures performances, utilisez la configuration de la mémoire cache d'objets DistributedMap. La configuration de la mise en cache de commandes est fournie pour la compatibilité avec les versions antérieures seulement.
Si vous utilisez la mise en cache d'instructions, vous pouvez sélectionner les données à mettre en cache. Vous pouvez affiner la configuration en changeant les attributs d'élément <cache-entry>, tels que <priority>, <timeout> et <inactivity>. Pour plus d'informations, voir cachespec.xml.
Vous pouvez configurer le cache de données HCL Commerce pour qu'il utilise les caches d'objets DistributedMap, en définissant des caches d'objets spéciaux nommés dans le fichier cacheinstances.properties.
Certaines caches d'objets DistributedMap sont définies automatiquement lors de l'installation. Pour afficher ces caches d'objets, ouvrez WebSphere Application Server Integrated Solutions Console, et dans le menu de gauche, cliquez sur .
Procédure
-
Mise en cache d'instructions
- Ouvrez l'exemple de fichier de configuration de cache,
cachespec.xml, qui se trouve dans le répertoire suivant :- WCDE_installdir\samples\dynacache\
- Copiez les éléments <cache-entry> de l'exemple de fichier de configuration de cache vers le fichier
cachespec.xmlqui se trouve dans le répertoire suivant :- workspace_dir\Stores\WebContent\WEB-INF\
cachespec.xml, de votre magasin, vous avez peut-être besoin de mesurer le débit, l'utilisation d'UC et l'utilisation de la mémoire, et d'ajuster les balises priority, timeout et inactivity pour obtenir les meilleures performances. - Ouvrez l'exemple de fichier de configuration de cache,
-
L'utilisation de la mise en cache d'objets dans les instances DistributedMap spécifiées entraîne la mise en cache de chaque type de données dans l'objet DistributedMap qui lui correspond.
Lorsque vous utilisez cette méthode, les configurations dans le fichier cachespec.xml ne sont pas utilisées pour les types de données pour lesquels une instance DistributedMap correspondante est définie. Vous ne pouvez affiner les attributs priority, timeout ou inactivity en utilisant le fichier de configuration cachespec.xml. Toutefois, vous pouvez indiquer d'autres attributs DistributedMap, tels que le nombre maximal d'entrées de cache à utiliser pour chaque DistributedMap. Pour plus d'informations sur le format du fichier cacheinstances.properties, voir Using the DistributedMap and DistributedObjectCache interfaces for the dynamic cache.
Il existe deux méthodes permettant de définir des objets DistributedMap :
- Définissez des objets DistributedMap à l'aide des noms JNDI par défaut situés dans le fichier
cacheinstances.propertiesqui se trouve dans le répertoire suivant :- WCDE_installdir\samples\dynacache\
- Utilisez WebSphere Application Server Integrated Solutions Console. Dans le menu de gauche, cliquez sur .
Dans un environnement en cluster, assurez-vous que le domaine de réplication est défini, et au moins le cache d'objets services/cache/WCSessionDistributedMapCache est défini. Tous les caches d'objets doivent permettre la réplication de cache (notShared replicationType 1) pour permettre aux ID d'invalidation d'être envoyés à tous les nœuds du domaine de réplication. Sinon, les identifiants d'invalidation ne sont pas envoyés à tous les noeuds dans le domaine de réplication, ce qui entraîne des résultats incorrects en raison de données obsolètes dans certaines instances de la mémoire cache. Veillez à définir le domaine de réplication et un type de réplication valide. Le type de réplication "non partagé" est recommandé.
- Définissez des objets DistributedMap à l'aide des noms JNDI par défaut situés dans le fichier
-
Les instances de cache d'objet définies dans le fichier cacheinstances.properties définissent les propriétés correspondantes pour chaque instance de cache.
Nom de la propriété Valeur cache.instance.n.cacheSize Commencez par la taille dans le modèle de fichier cacheinstances.properties. cache.instance.n.enableDiskOffload Commencez par "false". Mesurez l'impact sur les performances avant de modifier ce paramètre. Spécifiez la valeur "true" pour les instances de cache qui contiennent des données persistantes, applicables à de nombreux clients. Toutefois, pour des raisons de performances et de confidentialité, il est déconseillé de décharger des données relatives aux utilisateurs sur le disque. cache.instance.n.flushToDiskOnStop Commencez par "false". cache.instance.n.disableDependencyId false cache.instance.n.useListenerContext false cache.instance.n.filterLRUInvalidation true cache.instance.n.filterTimeOutInvalidation true cache.instance.n.filterInactivityInvalidation true cache.instance.n.disableTemplatesSupport true cache.instance.n.ignoreValueInInvalidationEvent true cache.instance.n.useServerClassLoader true -
Configurez un cache d'objet en vue d'utiliser le fournisseur de services WebSphere eXtreme Scale.
Les instances de cache d'objet définies dans le fichier cacheinstances.properties définissent les propriétés correspondantes pour chaque instance de cache.
Nom de la propriété Valeur cache.instance.n.enableDiskOffload false cache.instance.n.flushToDiskOnStop false cache.instance.n.disableDependencyId false cache.instance.n.useListenerContext false cache.instance.n.enableCacheReplication true cache.instance.n.replicationType 1 cache.instance.n.filterLRUInvalidation true cache.instance.n.filterTimeOutInvalidation true cache.instance.n.filterInactivityInvalidation true cache.instance.n.disableTemplatesSupport true cache.instance.n.ignoreValueInInvalidationEvent true cache.instance.n.useServerClassLoader true cache.instance.n.cacheProviderName com.ibm.ws.objectgrid.dynacache.CacheProviderImpl cache.instance.n.com.ibm.websphere.xs.dynacache.topology remote Remarque :- La propriété personnalisée cache.instance.n.com.ibm.websphere.xs.dynacache.topology est requise uniquement pour eXtreme Scale inférieur à la version 8.6.
- La propriété personnalisée cache.instance.n.com.ibm.websphere.xs.dynacache.disable_recursive_invalidate ne doit pas être utilisée avec WebSphere eXtreme Scale 8.6. Si vous utilisez cette propriété personnalisée, des quantités excessives de messages d'avertissement sont enregistrées dans le fichier journal de SystemOut.log. Pour plus d'informations sur cette question, voir l'APAR n° .
- Le moniteur de mémoire cache par défaut ne peut pas afficher le contenu des instances de la mémoire cache d'objets. Pour afficher le contenu d'une instance de mémoire cache d'objets, installez IBM Extended Cache Monitor pour IBM WebSphere Application Server. Pour plus d'informations sur ce moniteur ou pour le télécharger, voir la documentation IBM developerWorks :