Guten Morgen,
ich versuche die Ladezeit eines Shops zu optimieren. Problem, aktuell dauert ein Seitenaufruf ca 6 Sekunden ohne Cache. Bei 50.000 Artikel + ein paar Kategorien kann man einen Warmup Cron vergessen.
So viel Stunden hat ein Tag nicht.
Nun stellt sich mir die Frage, warum hat ein Pageload 6 Sekunden.
Es gibt ein aktives Elastic Search und Tideways zur Analyse. Ich finde 50.000 Artikel nicht gerade wenig, aber es gibt auch deutlich größere Shops. Das sollte ja mit einer Software wie Shopware realisierbar sein.
Nun zu den eig. Problemen, wo ich nicht weiterkomme.
Laut Tideways ist das Problem die Eigenschaften und CustomFields Abfragen. Dort bleibt die meiste Zeit hängen.
Parent ### Shopware\Core\Content\Property\Aggregate\PropertyGroupOption
Child ### EntityHydrator::translate ### Shopware\Core\Framework\DataAbstractionLayer\Dbal
Cchild ### EntityHydrator::customFields ### Shopware\Core\Framework\DataAbstractionLayer\Dbal
Dieser Prozess braucht alleine ca 3-4 Sekunden.
Nun frage ich mich, warum wird an dieser Stelle Dbal genutzt wenn doch Elastic Search aktiv ist?
Hat jemand eine Idee oder kann mir ein paar Tipps geben? Ein Seitenaufbau von 6 Sekunden ist nicht hinnehmbar. Ein Warmup ist unmöglich. Vorschläge?
Nachtrag: auf dem ES befindet sich 1 Index → sw6_product_2fbb5fe2e29a4d70aa5854ce7ce3e20b_1647600924 mit einem Doc Count von 964417.
Keine Ahnung ob die Eigenschaften da mit drin sind oder wie das in SW6 läuft. Unter SW5 gab es immer 2 Indexe. Dort waren die Eigenschaften in einem eigenen Index .
Besten Dank im Voraus.
Viele Grüße
Benjamin