HCL Commerce Search mise en cache
HCL Commerce Search utilise la mise en cache de fragments dans la vitrine.
- Les résultats de la recherche à partir de la page des résultats de recherche ne sont pas mis en cache à moins qu'un ID catégorie leur soit associé. En d'autres termes, les résultats de la recherche avec des facettes ou des termes de recherche ne sont pas mis en cache.
Un fragment ne peut être mis en cache que s'il est auto-exécutable. L'entrée <cache-entry> de chaque fichier JSP inclus dynamiquement doit être définie dans le fichier cachespec.xml. Cette entrée <cache-entry> nécessite que le fichier JSP soit présenté par la mémoire cache dynamique lorsqu'elle reçoit une requête. Faute de quoi, chaque fichier JSP dynamiquement inclus est réexécuté à chaque requête. Par exemple, considérons que StoreCatalogDisplay.jsp inclut dynamiquement CachedHeaderDisplay.jsp, CachedFooterDisplay.jsp et CachedStoreCatalogDisplay.jsp et vous définissez uniquement <cache-entry> pour CachedStoreCatalogDisplay.jsp. Si vous demandez la page StoreCatalogDisplay, les fichiers CachedStoreCatalogDisplay.jsp, CachedHeaderDisplay.jsp et CachedFooterDisplay.jsp sont exécutés s'ils ne sont pas mis en cache.
Mise en cache de filtre de catalogue
Si votre site utilise des filtres de catalogue, vérifiez que la mise en cache de filtre de catalogue est activée.
Invalidation des données en mémoire cache
Lorsque l'index de recherche est mis à jour, les entrées du cache associées aux recherches doivent être invalidé à l'aide de l'API Dynacache.
- com.ibm.websphere.cache.invalidateById
- com.ibm.websphere.cache.invalidateByTemplate
- com.ibm.websphere.cache.clear
HCL Commerce fournit également une commande DynaCacheInvalidation, qui est appelée périodiquement par le planificateur afin de traiter les enregistrements de la table CACHEIVL. Les API d'invalidation en cache dynamique de WebSphere Application Server sont ensuite appelées pour invalider les entrées de cache spécifiées. Par défaut, l'intervalle d'appel de cette commande est de 10 minutes. Pour plus d'informations sur ce processus d'invalidation, voir Invalidation des données en mémoire cache.
Remarques sur la mise en mémoire cache pour HCL Commerce Search
Vous pouvez utiliser la mise en cache de fragments pour les résultats de la recherche HCL Commerce Search. Cependant, vous devez vérifier avec soin que votre stratégie de mise en mémoire cache fonctionne correctement. Au minimum, vous devez tester vos stratégies de mise en cache avant de publier votre magasin sur le serveur de production.
Outre la mise en cache des données de recherche relativement statiques, telles que les entrées de recherche suggérées automatiquement, et grâce à l'utilisation de la mémoire cache dynamique, le serveur de recherche HCL Commerce met aussi en mémoire cache les données d'index dans la mémoire. La taille des pools de cache d'index doit être configurée en tenant compte de la taille du segment de mémoire allouée au serveur de recherche.