Amélioration des performances d’exportation des données SaaS
Le mode d’exportation de données multi-thread accélère le processus d’exportation en divisant les données de flux en lots et en les traitant en parallèle.
Les développeurs ou les intégrateurs système peuvent améliorer les performances en utilisant le mode d’exportation de données multi-thread au lieu du mode par défaut à thread unique. En mode thread unique, il n’existe aucune mise en parallèle du processus d’envoi du flux. En outre, en raison des limites par défaut définies, tous les clients ne peuvent utiliser qu’un seul thread. Dans la plupart des cas, la personnalisation de la configuration n’est pas requise.
Observations relatives à l’utilisation du mode multi-thread
Lorsque vous utilisez des services d’exportation de données, vous souhaitez optimiser les performances tout en assurant une synchronisation précise.
Adobe recommande d’utiliser la configuration par défaut pour l’ingestion des données, qui répond généralement aux exigences de synchronisation des commerçants Commerce. Cependant, il existe des scénarios où la personnalisation peut accélérer le temps de traitement.
Tenez compte des facteurs clés suivants lorsque vous décidez de personnaliser ou non la configuration de l’exportation des données :
-
Synchronisation initiale : évaluez le nombre de produits et estimez le volume de données et le temps de transmission en fonction de la configuration par défaut. Posez-vous la question suivante : pouvez-vous attendre la synchronisation initiale des données après l’intégration d’un service Commerce ?
-
Ajout de nouvelles vues de magasin ou de sites web - Si vous prévoyez d’ajouter des vues de magasin ou des sites web avec le même nombre de produits après mise en ligne, estimez le volume de données et le temps de transmission. Déterminez si le temps de synchronisation est acceptable avec la configuration par défaut ou si un traitement multi-thread est nécessaire.
-
Imports réguliers - Anticipez les importations régulières, telles que les mises à jour de prix ou les changements d’état des stocks. Déterminez si ces mises à jour peuvent être appliquées dans un délai acceptable ou si un traitement plus rapide est nécessaire.
-
Poids du produit - Déterminez si vos produits sont légers ou lourds. Ajustez la taille du lot en conséquence si les descriptions ou attributs de produit gonflent la taille du produit.
N’oubliez pas que la planification attentive, notamment l’estimation du volume des données et du temps de synchronisation, peut souvent éliminer le besoin de personnalisation. Planifiez les opérations d’ingestion des flux en fonction de ces estimations afin d’obtenir des résultats optimaux.
Configuration du multi-thread
Le mode multi-thread est pris en charge pour toutes les méthodes de synchronisation : synchronisation complète, synchronisation partielle et synchronisation des éléments en échec. Pour configurer le multithread, vous spécifiez le nombre de threads et la taille de lot à utiliser lors de la synchronisation.
thread-count
est le nombre de threads activés pour traiter les entités. La valeur par défautthread-count
est1
.batch-size
est le nombre d’entités qui sont traitées dans une itération. La valeur par défautbatch-size
est100
enregistrements pour tous les flux, à l’exception du flux de prix. Pour le flux de prix, la valeur par défaut est500
enregistrements.
Vous pouvez configurer le multithread comme option temporaire lors de l’exécution d’une commande de resynchronisation ou en ajoutant la configuration multithread à la configuration de l’application Adobe Commerce.
Configuration du multi-thread au moment de l’exécution
Lorsque vous exécutez une commande de synchronisation complète à partir de la ligne de commande, spécifiez le traitement multi-thread en ajoutant les options thread-count
et batch-size
à la commande de l’interface de ligne de commande.
bin/magento saas:resync --feed=products --thread-count=2 --batch-size=200
Les options spécifiées sur la ligne de commande remplacent la configuration d’exportation des données spécifiée dans le fichier de l’application Adobe Commerce config.php
.
Ajout d’un multi-thread à la configuration Commerce
Pour traiter toutes les opérations d’exportation de données à l’aide de plusieurs threads, les intégrateurs système ou les développeurs peuvent modifier le nombre de threads et la taille de lot de chaque flux dans la configuration de l’application Commerce.
Ces modifications peuvent être appliquées en ajoutant des valeurs personnalisées à la section système du fichier de configuration, app/etc/config.php
.
Exemple : configuration de multithreads pour les produits et les prix
<?php
return [
'system' => [
'default' => [
'commerce_data_export' => [
'feeds' => [
'products' => [
'batch_size' => 100,
'thread_count' => 2,
],
'prices' => [
'batch_size' => 400,
'thread_count' => 4,
]
]
],
// ...