Maximale Artikel pro Kategorie

Hallo. Wie die Überschrift schon sagt, wo ist das maximum? Ich habe eigentlich einen sehr guten root Server bei Hetzer (Daten folgen). Jedoch bei einer Kategorie habe ich ziemlich viele Probleme beim Laden. Im Handy geht es gar nicht. Dort sind ca 4000 Artikel und bisher 1 Auswahl Filter mit ca 100 Einträgen. Danke und Gruß. 

Hast du da Varianten aufgefächert? Hängt ganz konkret von der Konfiguration ab. Bei vielen Varianten braucht der Preisfilter häufig sehr lange. Ggf. mal testweise deaktivieren.

Insgesamt setzt man bei vielen Produkten meist auf elasticsearch um die Ladezeiten zu optimieren.

1 Like

Danke, mit dem deaktivierten Preisfilter kann man die Kategorie schonmal aufrufen. Wenn ich dann in einen Artikel gehe und wieder herausgehe wird an die URL /?p=1 rangehangen. Ich habe hier festgestellt, dass die Website dann in diesem Fall sich “zu Tode” lädt. Gleiches gilt wenn ich einen Filter anwende.

Die Frage ist für mich, liegt das an der Datenbank oder am Frontend? Habe bisher keine Tools gebraucht um das zu testen weil die Leistung immer ausgereicht hat. Kannst du etwas empfehlen? [@Moritz Naczenski](http://forum.shopware.com/profile/14574/Moritz Naczenski “Moritz Naczenski”)‍

Gruss und Danke.

mhh, es funktioniert wieder gar nichts mehr.Diese Seite funktioniert nicht - Google. Beim Cache aufwärmen habe ich gleich am Anfang eine Fehlermeldung.

Cache aufwärmen
Beim aufwärmen des Caches ist ein Fehler aufgetreten. Schau bitte in das System-Log, dort findest Du genauere Informationen.

Der System-Log zeigt aber nur die Fehler vom Vortag an. Habe im Moment kein root-zugang. Muss ich wohl warten.  Was mich irritiert ist aber auch, warum bei mir 18.000 Seiten erwärmt werden? Habe insgesamt nur ~ 4000 Artikel und diese nur in einer Kategorie.

Und Unterkategorien sind nicht möglich? Man kann doch so ziemlich alles gruppieren.

Es sind Filme (DVD, Bluray) und es soll anwachsen auf ca 100.000 Titel. Ich habe hier auf die Filter gehofft für Genre, Schauspieler, Sound, Medium. Viele Infos, wie z. B. Genre müssen wir nachträglich eintragen weil nicht vorhanden. 

Mit Tideways oder Blackfire sollte man zumindest rausbekommen können, wo es hängt. Bei 100.000 Artikeln in einer Kategorie wirst du aber nicht um elasticsearch drum herum kommen. Zumindest wenn die Ladezeit auch ohne Full Page Cache entsprechend schnell sein soll.

Wenn du viele Filter hast (= viel html Markup), dann deaktivier mal die Minifizierung im Performance Modul, dass läuft nur schnell auf Seiten mit kleinem Markup.

1 Like

Filme kann man doch gut in Genres unterteilen. Als Filter dann nehmen: BluRay, DVD, Schauspieler usw.

1 Like

Da muss ich eben noch mal eine dumme Frage fragen. Warum funktioniert das Backend mit so vielen Artikeln Problemlos aber das Frontend nicht? Was bremst denn das Frontend aus? Danke und Gruss

EDIT: Ist es normal wenn beim Cache aufwärmen (ich glaub der funktioniert bei mir gar nicht) folgendes im Request.log meines Servers steht: 

"GET /filme/ HTTP/1.1" 401 381 "-" "Guzzle/5.3.1 curl/7.29.0 PHP/7.3.13"

Das 401 macht mir Sorgen :-/

401 wahrscheinlich, weil du einen htaccess-Schutz vorgeschaltet hast, den müsstest du für Localhost/127.0.0.1 rausnehmen, wenn der Warmup durchlaufen soll.

Das Frontend hat generell viel mehr Logik als das Backend. Alleine die Ermittlung des günstigsten Preises für Listings, die Eigenschatfen pro Produkt aggregieren, der Kategoriebaum, Abverkauf, Aktiv/Inaktiv usw. muss im Backend nicht aufgelöst werden. Tendenziell zeigt dir das Listing im Frontend wesentlich mehr Informationen an und fragt auch deutlich mehr Conditions ab, als das Listing im Backend. Im Backend bekommst du ja einfach alle Produkte angezeigt und den Preis für EK.

 

1 Like

Ok, der Fehler mit dem Cache Warmup war tatsächlich die Schreibrechte. Das wurde allerdings nur im CLI angezeigt, im Backend und Backend-Log, sowie Serverlog wurde bis auf Requests.log 401 dieser Fehler nicht vermerkt. Ggf wäre das mal für eine Zukünftige Version als Verbresserungsvorschlag statt der Hinweis “Cache aufwärmen Beim aufwärmen des Caches ist ein Fehler aufgetreten. Schau bitte in das System-Log, dort findest Du genauere Informationen.”

Zurück zu der Kategorie mit den vielen Artikeln. Wird den Elasticsearch auf die Kategorie auswirken? Weil ist das nicht eigentlich nur die Suche? Selbst wenn ich die Filter alle im Template ausschalte braucht der ewig und drei Tage bzw stoppt dann einfach bei der max execution time.

Der Tip mit der HTML Komprimierung hat sehr gut geholfen.

Elasticsearch wird auch für die Listings und Filterung usw. genutzt. Der gibt dir quasi die IDs der Produkte zurück die geladen werden sollen, der Rest kommt dann über SQL.

Bei der Menge an Produkten in nur einer Kategorie, wirst du da denke ich nicht drum herum kommen.

1 Like

Habe ElasticSearch installiert - Das ist wirklich ein Super Tip

EDIT: es funktionieren aber im moment nicht mehr alle Kategorien. Ich schau mal ob man da ggf etwas einstellen muss

bin/console sw:es:index:populate

## Indexing shop Demoshop ##
Indexing properties
 55/55 [============================] 100% 1 sec/1 sec

 Evaluation:
  Total: 188 items
  Error: 0 items
  Success: 54 items


Indexing products
 4583/4583 [============================] 100% 7 secs/7 secs

 Evaluation:
  Total: 4581 items
  Error: 3341 items
  Success: 1240 items

Wie kann ich herausfinden was die Errors sind zum beheben? Danke und Gruss

Da wird eigentlich alles im Log festgehalten.

1 Like

Ich habe eine Frage noch zu Elastic Search. Kann es sein, dass der Dienst nach einer Weile “einschläft”. Weil wenn ich eine Zeit lang die Shopseite nicht nutze und wieder irgendeine Seite aufrufe, dann dauert es etwas, ca 15sekunden.

Gruss und Danke