[gelöst] Geschwindigkeit

Guten Tag,

ich habe zum Test einen Shop mit ca 5.000 Artikel. Dieser läuft mit APCu und OPCache.
PHP7.3 + 6GB MemoryLimit.

Das navigieren im Frontend ist eine qual. Selbst Contentseiten dauern ewig.

Hat jemand bereits Erfahrung damit? 5.000 Artikel sind jetzt nicht umbedingt viel.
Lt. Provider ist auf dem DB Server extrem viel los.

Besten Grüße
Ottscho

5000 Artikel ist garnichts.

Klingt mir eher seltsam, da SW6 auch deutlich Prozessorlastiger ist als DB-Lastig. Hast du ggf. noch irgendwelche Debug-Settings aktiv? hast du das Install-Paket genutzt?

Mit aktiver dev Einstellung in der .env kommt im Frontend ein Speicherfehler. Die Version ist eine 6.1 Install Version. 
Haben diese heute auf 6.1.1 geupdatet. Aber bzgl. der Geschwindigkeit gibt es keine Änderung. Sonst an sich nichts besponderes.
Die 5.000 Artikel wurden über ein Import Plugin erzeugt. Es gibt noch 2 zusätzliche Storefronten, welche eine kleine CMS Seite wiederspiegeln.

Gerne schicke ich dir zur Prüfung per PM einen Zugang.

 

[@Moritz Naczenski](http://forum.shopware.com/profile/14574/Moritz Naczenski “Moritz Naczenski”)‍ ich will nicht drängeln, aber ich hänge hier extrem in den Seilen.
Die Storefront ist sozusagen unbrauchbar. Gibt es den bereits Shops mit vielen Artikeln unter SW6? Wobei 5.000 eig. nicht wirklich viele sind.
Wobei die SW6 Shops die Live sind ja eher spezielle Projekte mit sehr wenig Artikeln sind.

Lokal hab ich mit 50.000 Artikeln eine Ladezeit unter 700ms im DEV Modus. Daran wird es nicht liegen.

Vermute eher am Kategoriebaum oder ähnlichem. Müsstest du mal mit Blackfire, tideways oder ähnlichem analysieren was der Bottleneck ist.

Mir sagt die Serverkonfiguration nichts, aber haben auch ein System auf einem 0815 Webserver (128M Memory Limit) mit ca 10k Artikeln und insgesamt 200 verschachtelten Kategorien, die bei jedem Seitenaufruf geladen werden. Und wir können auch keinerlei Performance Probleme feststellen.

Habe es eben zum Test auf einen anderen Server / Provider dupliziert.  (Ohne Bilder).
Da kann ich das Problem auch nicht sehen. Ich muss mal den anderen Provider interviewen.

Danke

Ich habe nun vom Provider eine Rückmeldung bzwl. etwas, was ihm auffällt.
Kann damit jemand was anfangen?

als beim strace vielen mir sehr häufig dieser trace auf: 

access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/U/V/9WtObER++DiGeh0EAdew“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/K/H/HTcsT2o9V1seYTn4NM4Q“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/P/8/31WuQJl378DWFa-0GlHA“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/F/Q/-eGpOCj8ZzT6UoLXRjNA“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/T/F/fHo9Ly4eupJnKEXiGsAw“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/J/G/QGkhY+BLqc9ya9V-0sDw“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/W/T/DAKIqqbZhBdEASv2Trag“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/R/0/xRPyd0G24UM5g8G3QIfA“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/1/8/kY72s1zu1DsES7WgJfkw“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/0/H/zvHKR3tXUV83UEGcc28A“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/J/L/7VfX+JdvSbk0Zq1FD6AQ“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/O/T/Xfco3LvEi0wmDXXSYzLA“, F_OK) = -1 ENOENT (No such file or directory)
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/lfkMI794yV/B/I/ZokrOQNjZ9OdYSFM17GA“, F_OK) = -1 ENOENT (No such file or directory)

bzw. bei nicht gecachden Seiten: 

close(10)                               = 0
access(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/f5mi57D4rH/C/L/Gx+TzFvbvQtpeCtvex5A“, F_OK) = 0
lstat(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/f5mi57D4rH/C/L/Gx+TzFvbvQtpeCtvex5A“, {st_mode=S_IFREG|0644, st_size=228, …}) = 0
open(„/home/exa/example.com-sw6/var/cache/prod_h80881ee4cbd48f6be4b4a4f81557212c/pools/f5mi57D4rH/C/L/Gx+TzFvbvQtpeCtvex5A“, O_RDONLY) = 10
fstat(10, {st_mode=S_IFREG|0644, st_size=228, …}) = 0
lseek(10, 0, SEEK_CUR)                  = 0
read(10, „1580922535\n%00tags%00923ca79e523“…, 8192) = 228
fstat(10, {st_mode=S_IFREG|0644, st_size=228, …}) = 0
read(10, „“, 8192)                      = 0
read(10, „“, 8192)                      = 0
close(10)    

@ottscho‍ vielleicht ist das noch eine Idee? https://forum.shopware.com/discussion/comment/262367/#Comment_262367

Danke, leider nein. Macht kein Unterschied.

1 Like

Die Meldungen oben sind ja nur Cache-Zugriffe, wüsste nicht warum das ein Problem sein sollte.

Am besten kommst du mit Blackfire oder Tideways zurecht, da siehst du auch welches Event/Part hier der Bottleneck ist.

MySQL8 oder die aktuellste MariaDB geben auch nochmal einen ziemlichen Boost.

Bilder hochladen

30 Sekunden für die Navigation^^

 

 

Bilder hochladen

So richtig viel kann ich nicht ableiten. 3,2 Sekunden für Session_start ist ja schon lange. Aber 30 Sekunden komplett?

Für mich sieht es sehr nach einem loop aus, auch wenn ich mit das Summery / die Bottlenecks ansehe: 

Bilder hochladen

Bilder hochladen

Die Navigation wird ja gecached, dass kann einmalig bei vielen Kategorien vielleicht etwas dauern aber bei weiteren Requests nicht mehr.

Session_Start ist schon ziemlich lange. Ist das denn eine SSD auf dem Server? Gerade Cache Zugriffe und auch Session wird ja auf der HDD verwaltet und braucht einfach i/o Performance.

Hast du den Consumer für die Messages denn als Cron auf dem Server laufen?

 

Nein, es ist im Moment kein Cronjob eingerichtet. Bei dem Testsystem sind keine Plugins / Theme aktiv. Alles ist  Standard.
Es sind eben nur die 5.000 Artikel drin.

Ich habe auch zum Test eine neue Kategorie mit nur 5 Artikel erstellt und diese in die Storefornt gemappt.
(Die Grundanzahl der Artikel sind aber immer noch im Backend).

Haben den Consumer mal gestartet. Aber theoretisch hätte dieser ja nichts zum abarbeiten.

(Schaut ihr euch so ein Fall an, wenn der Kunde SW5 Prof hat?)
Profihost kennt so ein Verhalten bisher nicht mit SW6. SDD sind verbaut.

 

Naja, er hat ja automatisch auch eine SW6 Professional über den Wartungsvertrag. Dann kann er ein Ticket öffnen und wir schauen uns das natürlich an. Kannst auch dazu schreiben, dass wir dazu gesprochen haben.

Schick doch am besten mal alles über den Support rein - also Zugänge, Tideways usw.

@ottscho schrieb:

Nein, es ist im Moment kein Cronjob eingerichtet. Bei dem Testsystem sind keine Plugins / Theme aktiv. Alles ist  Standard.
Es sind eben nur die 5.000 Artikel drin.

Und Varianten ?

Sind den die Domains (Verkaufskanal) alle auch http: statt https: das wäre mein erster Verdacht, (sofern ich auf der richtigen Seite bin?): Geht das SW6 so überhaupt komplett ohne https:

 

okay, Varianten sind natürlich da. Es liegen 51316 Datensätze in der product Tabelle.
Der Testshop läuft ohne SSL. In der Storefront ist die URL ohne SSL eingetragen.

Ich habe das ganze Setting noch bei Timme laufen (ohne Produktbilder). Da habe ich die Probleme aber nicht.

Fühlt sich an als ober der Cache Ordner VAR/CACHE nicht vorhanden oder nicht beschreibbar ist.