Considérations relatives à l'évaluation des promotions

Lorsque vous concevez des promotions pour votre site, prenez en compte la façon dont elles sont évaluées. La façon dont vous concevez vos promotions et configurez le processus d'évaluation des promotions peut affecter les performances de votre site au cours de l'évaluation des promotions. Lorsque vous créez des promotions, prenez en compte le type de promotion, les modalités de la promotion, la taille des commandes évaluées et le générateur d'agenda qui est utilisé pour l'évaluation des promotions.

Types de promotion et modalités

Lorsque vous créez des promotions dans le Centre de gestion, certains types de promotion et certaines modalités peuvent affecter les performances de votre magasin. Pour plus d'informations sur l'effet de certains types de promotion sur les performances de votre magasin, voir Considérations relatives aux types de promotion et aux modalités.

Configuration du moteur de promotion

Vous pouvez configurer les paramètres du moteur de promotion afin d'améliorer les performances de l'évaluation des promotions. Procédez aux changements suivants en ajustant les paramètres dans la configuration du moteur de promotion :
  • Désactivez le suivi de débogage du moteur en configurant <Debug>false</Debug>. Au lieu d'utiliser la fonction de trace de débogage du moteur, vous pouvez utiliser la fonction de trace de WebSphere Application Server. Pour plus d'informations sur la fonction de suivi de WebSphere Application Server, voir Composants de suivi.
  • Si le support BestDeal est activé, assurez-vous que <SequenceCombinationLimit> est configuré avec une valeur acceptable. Pour plus d'informations sur le changement de valeur de ce paramètre, voir Prise en charge de la proposition optimale pour les promotions.
  • Réglez la taille du cache pour PersistenceManagers, en particulier <InitialCacheSize> et <MaxCacheSize> pour PromotionPersistenceManager. En définissant la taille du cache en fonction de l'utilisation des promotions du magasin, vous pouvez améliorer certaines performances. La définition de la taille du cache peut empêcher un accès inutile à la base de données et une analyse syntaxique XML des règles de promotion. Le paramètre par défaut permet au cache de contenir 1024 objets de promotion. La taille du cache peut être étendue à 8192 objets. Augmentez le paramètre <MaxCacheSize> si votre site contient des promotions utilisées de façon plus active. Ce cache est contenu dans la machine virtuelle Java (JVM) et sa taille peut être ajustée en fonction de la mémoire disponible au moment de l'exécution.
  • Activez WCPromotionDistributedMapCache DistributedMap. L'activation de ce paramètre peut vous aider à améliorer les performances de la logique liée aux promotions.

Pour plus d'informations sur le réglage des paramètres du moteur de promotion et pour accéder à d'autres options de configuration du moteur de promotion, voir Configuration du moteur de promotion.

Générateurs d'agenda de promotions

Lorsque le moteur de promotion est appelé, un générateur d'agenda est d'abord utilisé pour déterminer les promotions actives d'une commande. Le générateur d'agenda de promotions spécifique utilisé par votre site peut affecter les performances du processus d'évaluation de promotion. Pour plus d'informations sur ce sujet, voir Considérations relatives au générateur d'agenda de promotions.

Nombre de produits d'une commande

Un panier comportant de nombreux produits ne se comporte pas comme un panier comportant peu d'articles. Ce comportement est dû au nombre de calculs nécessaires pour évaluer les promotions d'un panier comportant de nombreux produits. Ce problème lié aux performances basées sur un calcul est aggravé lorsque plusieurs promotions sont appliquées au même article d'un panier. Pour améliorer les performances, concentrez-vous sur la taille générale et la composition des commandes pour évaluer les performances des promotions pendant le réglage des performances. Testez les commandes volumineuses avec des commandes classiques pour vous assurer que l'évaluation de ces commandes n'entraîne pas une réduction des performances pour les clients moyens.

Vous pouvez définir une taille limite pour les paniers des clients afin d'éviter les problèmes liés aux performances en raison de paniers trop volumineux. Pour plus d'informations sur la définition de cette limite, voir Configuration de limites de commande pour la prévention d'exceptions sans limite.

Structure de catalogue

De nombreux types de promotion présentent des modalités basées sur les catalogues. Les performances de l'extraction des informations de catalogue peuvent affecter l'évaluation des promotions. Etant donné qu'une promotion peut être définie au niveau de la catégorie ou du produit parent, CalculationCodeListDataBean doit résoudre la relation article-produit. CalculationCodeListDataBean doit découvrir la structure de catégorie pour chaque article d'un panier afin de vérifier si l'article est éligible pour une promotion de niveau catégorie. Ce processus utilise la structure de catégorie pour chaque élément afin de générer une requête pour les informations de promotion sur les tables CATENCALCD et CATGPCALCD tables. Le nombre de catalogues pour votre magasin et la profondeur des structures de catégorie peuvent affecter les performances de ce processus. Ce processus est également déclenché dans la logique ShopcartDrivenAgendaBuilder pour filtrer les promotions non connexes en fonction du panier. La logique de ce processus utilise WCS DataCache pour accéder aux informations de catalogue. Vous pouvez activer les mappes réparties suivantes pour permettre de meilleures performances pour la logique de promotion dans l'extraction des informations de catalogue :
  • WCCatalogGroupDistributedMapCache DistributedMap
  • WCCatalogEntryDistributedMapCache DistributedMap
Remarque : Pour améliorer les performances, la logique de promotion par défaut met en mémoire cache la structure de catégorie et les données d'attribut résolues dans les objets de promotion pendant le processus d'évaluation.

Nombre de segments de clientèle et modalités

Les segments de clientèle peuvent être définis comme l'un des deux types suivants :
  • Segments de clientèle explicites possédant des membres ajoutés explicitement au segment.
  • Segments de clientèle implicites dont les caractéristiques client sont utilisées pour déterminer l'appartenance dans le segment. Par exemple, des données démographiques ou l'historique des achats.

L'utilisation de segments explicites fonctionne mieux que celle de segments implicites dont les règles doivent fréquemment être évaluées lors de l'exécution. L'activation de WCUserDistributedMapCache DistributedMap améliore également les performances de la logique liée aux membres.