De exportprestaties van SaaS-gegevens verbeteren
Gegevens exporteren met meerdere verbindingen, modus versnelt het exportproces door voedergegevens in partijen te splitsen en parallel te verwerken.
De ontwikkelaars of systeemintegrators kunnen prestaties verbeteren door de multi-draadgegevens te gebruiken uitvoeren wijze in plaats van de standaard single-thread wijze. In single-thread wijze, is er geen parallellisatie van het proces van de voedervoorlegging. Bovendien, wegens de vastgestelde standaardgrenzen, zijn alle cliënten beperkt tot het gebruiken van slechts één draad. In de meeste gevallen is het niet nodig de configuratie aan te passen.
Overwegingen voor het gebruiken van multi-draadwijze
Wanneer u werkt met services voor het exporteren van gegevens, wilt u de prestaties optimaliseren en een nauwkeurige synchronisatie garanderen.
Adobe raadt aan de standaardconfiguratie voor gegevensinvoer te gebruiken, die doorgaans voldoet aan de synchronisatievereisten voor Commerce-handelaren. Er zijn echter scenario's waarin aanpassing de verwerkingstijd kan versnellen.
Houd rekening met de volgende belangrijke factoren wanneer u besluit of u de configuratie voor het exporteren van gegevens wilt aanpassen:
-
Eerste synchronisatie-Evalueer het aantal producten en raming van het gegevensvolume en de transmissietijd op basis van de standaardconfiguratie. Vraag uzelf: Kan u wachten op deze eerste gegevenssynchronisatie na het instappen van een Commerce-service?
-
Nieuwe winkelweergaven of websites toevoegen- Als u van plan bent om winkelmeningen of websites met de zelfde producttelling toe te voegen nadat het gaan leven, schat het gegevensvolume en transmissietijd. Bepaal of de synchronisatietijd met de standaardconfiguratie aanvaardbaar is of als multi-draadverwerking noodzakelijk is.
-
Gewone invoer- Anticiperen op reguliere invoer, zoals prijsupdates of wijzigingen in de voorraadstatus. Bepaal of deze updates binnen een aanvaardbare tijd kunnen worden toegepast of als snellere verwerking nodig is.
-
Productgewicht- Overweeg of uw producten licht of zwaar zijn. Pas de grootte van de batch aan als de productbeschrijving of -kenmerken de productgrootte opblazen.
Herinner dat de doordachte planning, met inbegrip van het schatten van gegevensvolume en synchronisatietijd, vaak de behoefte aan aanpassing kan elimineren. Plan op basis van deze schattingen de inname van diervoeders om optimale resultaten te bereiken.
Multithreading configureren
Modus met meerdere verbindingen wordt ondersteund voor alle synchronisatiemethoden—volledige synchronisatie, gedeeltelijke synchronisatie en mislukte items synchroniseren. Om multi-threading te vormen, specificeert u het aantal draden en partijgrootte om tijdens synchronisatie te gebruiken.
threadCount
is het aantal draden die aan procesentiteiten worden geactiveerd. De standaardwaardethreadCount
is1
.batchSize
is het aantal entiteiten dat in één herhaling wordt verwerkt. De standaardwaardebatchSize
is100
gegevens over alle diervoeders, met uitzondering van de prijsvoeding. Voor de prijsfeed is de standaardwaarde:500
records.
U kunt multi-threading als tijdelijke optie vormen wanneer het runnen van een resync bevel, of door de multi-draadconfiguratie aan de de toepassingsconfiguratie van Adobe Commerce toe te voegen.
Multithreading tijdens runtime configureren
Wanneer u een volledige synchronisatieopdracht uitvoert vanaf de opdrachtregel, geeft u de verwerking met meerdere verbindingen op door de opdracht threadCount
en batchSize
opties aan het CLI bevel.
bin/magento saas:resync --feed=products --threadCount=2 --batchSize=200
De opties op de opdrachtregel overschrijven de configuratie voor gegevensexport die is opgegeven in de Adobe Commerce-toepassing config.php
bestand.
Multithread toevoegen aan de Commerce-configuratie
Als u alle bewerkingen voor het exporteren van gegevens wilt verwerken met multithreading, kunnen systeemintegrators of ontwikkelaars het aantal threads en de batch-grootte voor elke feed in de Commerce-toepassingsconfiguratie wijzigen.
Deze wijzigingen kunnen worden toegepast door aangepaste waarden aan de systeemsectie van het configuratiebestand, app/etc/config.php
.
Voorbeeld: Multithreading configureren voor producten en prijzen
<?php
return [
'system' => [
'default' => [
'commerce_data_export' => [
'feeds' => [
'products' => [
'batch_size' => 100,
'thread_count' => 2,
],
'prices' => [
'batch_size' => 400,
'thread_count' => 4,
]
]
],
// ...