Hallo Community,
in oberem Hilferuf geht es wahrscheinlich um die von uns entwickelte Schnittstelle https://www.shopconnectflex.de für Shopware 6.
Wir verwenden hier die Admin API um Artikel und Kategorien etc. mit einer ERP Software 1:1 zu synchronisieren.
Technisch klappt das alles reibungslos nur kämpfen wir mit der Geschwindigkeit.
Wir konnten über Zeitmessungen nun folgendes messen:
Anlegen eines Kategorie-Dummys:
{„active“:false,„id“:„74bebe00000049519050020000004721“,„name“:„SHOPCONNECTFLEX6_DUMMY“,„parentId“:„74bebe00000049519050020000004693“,„visible“:false}
–> Bis hier eine Antwort kommt dauert es 1028 ms
Ich gehe davon aus, dass es deswegen so lange dauert, weil Shopware hier die internen Berechnungen mit Level und Childcount etc. durchführt.
Nun füllen wir den Dummy mit Echtdaten:
{„active“:true,„type“:„page“,„cmsPageId“:„4082c19dba5e44dda04c788a40248cf6“,„visible“:true,„afterCategoryId“:„74bebe00000049519050020000004720“,„parentId“:„74bebe00000049519050020000004693“,„displayNestedProducts“:true}
–> Bis hier eine Antwort kommt dauert es 744 ms
Mag sein, dass man diese beiden Schritte zusammenlegen könnte - unter 1 Sekunde kommt man aber nicht.
Jetzt wurde auch in der Tabelle category_translation ein Datensatz durch Shopware angelegt, den wir anpassen:
{„name“:„KATEGORIEBEZEICHNUNG“}
Ausser dem Namen passen wir nichts an - aber das dauert für jede einzelne Sprache dann nochmals: 736ms
Je mehr Artikelkategorien angelegt wurden - je länger dauert der obige Prozess. Bei nur rund 3000 Kategorien sind wir schon bei 1 Sekunde Antwortzeit - dann leider mit jeder weiteren Kategorie erheblich steigernd.
Bei 5000 Kategorien annähernd bei 3 Sekunden usw.
Meine Fragen daher:
Kann das jemand nachvollziehen - Anlegen einer Kategorie mit 2 Sprachen dauert insgesamt rund 3 Sekunden ?
Gibt es - ausser an der Hardware die Geschwindigkeit zu erhöhen Lösungen, wie man schneller eine Antwort auf einen API Befehl bekommen kann?
Die Befehle für das Grundgerüst inkl. Daten kann man evtl. kombinieren - gibt es auch Möglichkeiten alle Sprachen in einem API Befehl zu senden?
Ich habe dazu nichts gefunden - die Sprache steht ja im Header drin…
Ähnliches Problem, dass es lange dauert ergibt sich bei Artikeln, wobei es da keine Geschwindigkeitsunterschiede gibt, ob wir nun den 1. oder den 10.000 Artikel im Shop anlegen. Jeder Artikel selbst dauert 2 Sekunden für die Erstanlage… Leider viel zu lange.
Die SyncAPI kann aus verschiedenen Gründen hier nicht eingesetzt werden.
Danke für alle Hinweise.