L'installation et la configuration du fournisseur de cache
dynamique d'eXtreme Scale varient en fonction de vos exigences et de
l'environnement que vous avez configuré.
Pourquoi et quand exécuter cette tâche
Pour savoir
comment utiliser le fournisseur de cache dynamique d'
eXtreme Scale
avec IBM® WebSphere Commerce, voir
les rubriques suivantes dans la documentation d'IBM WebSphere Commerce :
Si vous ne dirigez pas spécifiquement votre mise en cache
vers une instance ObjectCache ou ServletCache définie, il y a de fortes chances
que les appels à l'API DynamicCache soient traités par baseCache, le cache de base.
Si vous souhaitez utiliser le fournisseur de cache dynamique eXtreme Scale pour JSP, les services Web ou la mise en cache des commandes, vous devez définir l'instance baseCache pour utiliser le fournisseur de cache dynamique eXtreme Scale.
Les mêmes propriétés de configuration permettent de configurer l'instance baseCache. Notez que ces propriétés de configuration doivent être définies comme propriétés personnalisées Java Virtual Machine (JVM).
Cette restriction s'applique à toutes les propriétés de configuration de cache décrites dans cette section, à l'exception de la mise en cache de servlet. Pour utiliser eXtreme Scale avec le fournisseur de cache dynamique pour la mise en cache de servlet, veillez à configurer l'activation dans les propriétés système et non pas dans les propriétés personnalisées.
- Activez le fournisseur de cache dynamique d'eXtreme Scale.
- WebSphere
Application Server Version
7.0 et suivantes :
Vous pouvez configurer le service de cache dynamique pour utiliser le fournisseur de cache dynamique eXtreme Scale avec la console d'administration. Après avoir installé eXtreme Scale, le fournisseur de cache dynamique eXtreme Scale est immédiatement disponible comme option Fournisseur de cache dans la console d'administration. Pour plus d'informations, voir le centre de documentation WebSphere
Application Server Version 7.0 : Selecting a cache service provider.
- WebSphere
Application Server Version
6.1 :
Utilisez une propriété personnalisée pour configurer le service de cache dynamique pour utiliser le fournisseur de cache dynamique
eXtreme Scale. Vous pouvez également utiliser ces propriétés personnalisées dans
WebSphere
Application Server Version 7.0 et les versions suivantes. Pour créer une propriété personnalisée dans une instance de cache, cliquez sur . Si vous utilisez l'instance de cache de base, créez les propriétés personnalisées de la machine JVM.
- com.ibm.ws.cache.CacheConfig.cacheProviderName
- Pour utiliser le fournisseur de cache dynamique eXtreme Scale, définissez la valeur com.ibm.ws.objectgrid.dynacache.CacheProviderImpl.
Vous pouvez créer cette propriété personnalisée dans une instance de cache dynamique ou l'instance de cache de base. Si vous choisissez de définir la propriété personnalisée dans l'instance de cache de base, toutes les autres instances de mémoire cache sur le serveur utilisent le fournisseur eXtreme Scale par défaut. Les propriétés de configuration du fournisseur de cache dynamique eXtreme Scale définies pour baseCache sont les propriétés de configuration par défaut pour toutes les instances de cache sauvegardées par eXtreme Scale. Pour remplacer l'instance de cache de base et créer une instance de cache dynamique, utilisez le fournisseur de cache dynamique par défaut, créez la propriété personnalisée com.ibm.ws.cache.CacheConfig.cacheProviderName dans l'instance de mémoire cache dynamique et définissez la valeur default.
- Facultatif : Si vous utilisez des instances de cache répliqué, configurez le paramètre de réplication de la mémoire cache.
Avec le fournisseur de cache dynamique eXtreme Scale, vous pouvez avoir des instances de cache local ou des instances de cache répliqué.
Si vous utilisez uniquement des instances de cache local, vous pouvez ignorer cette étape.
Utilisez l'une des méthodes suivantes pour configurer le cache répliqué :
- Activer la réplication de cache à l'aide de la console d'administration.
Vous pouvez activer la réplication de la mémoire cache à tout moment dans WebSphere
Application Server Version 7.0. Dans WebSphere
Application Server Version 6.1, vous devez créer un domaine de réplication DRS.
- Activer la réplication de cache à l'aide de la propriété personnalisée com.ibm.ws.cache.CacheConfig.enableCacheReplication pour forcer le cache à signaler qu'il s'agit d'un cache répliqué, bien qu'un domaine de réplication DRS ne lui ait pas été affecté. Affectez la valeur true à cette propriété.
Définissez cette propriété personnalisée dans l'instance de mémoire cache si vous utilisez une mémoire cache d'objet ou de servlet, ou sur la machine virtuelle Java si vous utilisez l'instance baseCache.
- Facultatif : Si vous utilisez eXtreme Scale comme un cache de fragments JSP, définissez la propriété personnalisée com.ibm.ws.cache.CacheConfig.disableTemplateInvalidation avec la valeur true pour désactiver les invalidations basées sur les modèles lors des rechargements JSP.
- Configurez la topologie pour le service de cache dynamique.
Le
seul paramètre de configuration requis pour le fournisseur de cache
dynamique d'eXtreme Scale est la
topologie du cache. Définissez cette propriété personnalisée dans l'instance de mémoire cache ou pour le service de cache dynamique si vous utilisez l'instance baseCache.
Entrez le nom de la propriété personnalisée comme suit : com.ibm.websphere.xs.dynacache.topology.
Les trois valeurs possibles de cette propriété sont les suivantes. Vous devez utiliser l'une des valeurs autorisées :
- embedded
- embedded_partitioned
- remote
Si vous utilisez des topologies intégrées ou partitionnées intégrées, vous pouvez définir la propriété personnalisée com.ibm.ws.cache.CacheConfig.ignoreValueInInvalidationEvent en lui affectant la valeur true pour réduire l'impact de la sérialisation. Définissez cette propriété personnalisée dans l'instance de mémoire cache ou la machine virtuelle Java si vous utilisez l'instance baseCache.
- Facultatif : Si vous utilisez une topologie partitionnée intégrée, configurez le nombre de conteneurs initiaux pour le service de mise en cache dynamique.
Vous pouvez maximiser les
performances des mémoires cache qui utilisent la topologie partitionnée intégrée en configurant le nombre initial de conteneurs. Définissez la variable comme propriété système dans la machine virtuelle WebSphere
Application Server Java.
Entrez le nom de la propriété comme suit : com.ibm.websphere.xs.dynacache.num_initial_containers.
La valeur recommandée pour cette propriété de configuration est un entier qui est égal ou légèrement inférieur au nombre total d'instances WebSphere
Application Server qui accèdent à cette instance de cache réparti. Par exemple, si un service de cache dynamique est partagé entre les membres d'une grille de données, la valeur doit correspondre au nombre de membres de la grille de données.
Pour des topologies intégrées ou partitionnées intégrées,
vous devez utiliser la version 7.0 de WebSphere
Application Server. Définissez la propriété suivante
dans le processus JVM pour vous assurer que les conteneurs initiaux sont immédiatement disponibles.
com.ibm.ws.cache.CacheConfig.createCacheAtServerStartup=true
- Configurez la grille du service de catalogue d'eXtreme Scale.
Lorsque
vous utilisez eXtreme Scale comme le fournisseur de mémoire cache dynamique pour une instance
de cache réparti, vous devez configurer un domaine de service de catalogue eXtreme Scale.
Un même domaine de service de catalogue peut traiter
plusieurs fournisseurs de services de cache dynamique s'appuyant sur eXtreme Scale.
Un service de catalogue peut être exécuté à l'intérieur ou à l'extérieur
des processus WebSphere
Application Server. Depuis eXtreme Scale Version
7.1, lorsque vous utilisez la console d'administration pour configurer les domaines de service de catalogue, le cache dynamique utilise ces paramètres. Il n'est pas nécessaire
de procéder à une configuration supplémentaire pour définir un service de catalogue. Pour plus d'informations, voir
Création de domaines de service de catalogue dans WebSphere Application Server.
- Configurez les objets de clé personnalisés.
Si vous utilisez des objets
personnalisés comme des clés, ces objets doivent implémenter l'interface
Serializable ou Externalizable. Lorsque vous utilisez des topologies intégrées
ou des topologies partitionnées intégrées, vous devez placer les objets dans
le chemin d'accès à la bibliothèque partagée de WebSphere, comme s'ils étaient
utilisés avec le fournisseur de cache dynamique par défaut. Pour plus de détails, voir Utilisation des interfaces DistributedMap et
DistributedObjectCache pour le cache dynamique dans le Centre de documentation de WebSphere
Application Server Network Deployment.
Si vous
utilisez la topologie éloignée, vous devez placer les objets de clé
personnalisés dans le chemin d'accès aux classes (CLASSPATH) des conteneurs eXtreme Scale autonomes. Pour plus d'informations, voir Démarrage des serveurs de conteneur.
- Facultatif : Si vous utilisez une topologie distante, configurez les serveurs de conteneureXtreme Scale.
- Topologie partitionnée intégrée ou intégrée :
Les données en mémoire cache sont stockées dans les serveurs de conteneur WebSphere eXtreme Scale. Un service de catalogue peut être exécuté à l'intérieur ou à l'extérieur
des processus WebSphere
Application Server.
Le fournisseur eXtreme Scale crée automatiquement des conteneurs dans le processus WebSphere si vous utilisez des
topologies intégrées ou partitionnées intégrées pour une instance de cache. Aucune
configuration supplémentaire n'est requise pour ces topologies.
- Topologie distante :
Si vous utilisez la topologie distante, vous devez démarrer les serveurs de conteneur autonomes eXtreme Scale avant les instances WebSphere
Application Server qui accèdent au démarrage de l'instance de cache. Pour démarrer les serveurs de conteneur autonomes, voir Démarrage des serveurs de conteneur. Vérifiez que tous les serveurs de conteneur d'un service de cache dynamique pointent vers les mêmes noeuds finals de service de catalogue.
Les fichiers de configuration XML des conteneurs de fournisseur de cache dynamique autonome eXtreme Scale se trouvent dans le répertoire racine_was/optionalLibraries/ObjectGrid/dynacache/etc pour les installations sur WebSphere
Application Server ou dans le répertoire racine_install_wxs/ObjectGrid/dynacache/etc pour les installations autonomes. Les fichiers s'intitulent dynacache-remote-objectgrid.xml et dynacache-remote-definition.xml.
Créez une copie de ces fichiers pour les modifier et les utiliser lorsque vous démarrez des conteneurs autonomes pour le fournisseur de cache dynamique eXtreme Scale. Le paramètre numInitialContainers dans le fichier dynacache-remote-deployment.xml doit correspondre au nombre de processus conteneur qui sont en cours d'exécution. Notez que l'attribut numberOfPartitions dans le fichier dynacache-remote-objectgrid.xml a la valeur par défaut 47.
Remarque : L'ensemble des processus de serveur de conteneur doit disposer d'une mémoire suffisante pour traiter toutes les instances de cache dynamique qui sont configurées pour utiliser la topologie distante. Tous les processus
WebSphere
Application Server qui partagent les mêmes valeurs ou des valeurs équivalentes pour la propriété personnalisée catalog.services.cluster doivent utiliser le même ensemble de conteneurs autonomes.
Le nombre de conteneurs et le nombre de serveurs sur lesquels ils résident doivent être dimensionnés de manière appropriée. Pour plus de détails, voir
Planification de la capacité de la mémoire cache dynamique.
Voici une entrée de ligne de commande qui lance un conteneur autonome pour le fournisseur de cache dynamique eXtreme Scale :
startOgServer.sh container1 -objectGridFile
../dynacache/etc/dynacache-remote-objectgrid.xml -deploymentPolicyFile
../dynacache/etc/dynacache-remote-deployment.xml -catalogServiceEndPoints
MyServer1.company.com:2809
- Dans le cas de topologies réparties ou intégrées, activez l'agent de dimensionnement
pour améliorer les estimations d'utilisation de la mémoire.
L'agent de dimensionnement
estime l'utilisation qui sera faite de la mémoire (statistiques usedBytes). L'agent requiert Java 5 ou supérieur.
Chargez l'agent
en ajoutant l'argument suivant à la ligne de commande de la machine virtuelle Java :
-javaagent:rép_biblio_WXS/wxssizeagent.jar
Dans le cas d'une topologie intégrée,
ajoutez l'argument à la ligne de commande du processus WebSphere
Application Server.
Dans le cas d'une topologie répartie,
ajoutez l'argument à la ligne de commande des processus eXtreme Scale (conteneurs)
et du processus WebSphere
Application Server.