Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Shopware Core Optimierung

Ähnliche Präsentationen


Präsentation zum Thema: "Shopware Core Optimierung"—  Präsentation transkript:

1 Shopware Core Optimierung
Überblick Überblick Shopware Core Optimierung Ein Vortrag von enrrud

2 Überblick Vorstellung Die Aufgabe Tools Maßnahmen Fazit

3 Vorstellung Enrico Rudolph Programmierer Shopware Projekte
Seit 5.1 Magento Projekte Seit 1.5 PHP | JAVA

4 Überblick Vorstellung Die Aufgabe Tools Maßnahmen Fazit

5 Die Aufgabe First Request schneller machen Bottlenecks finden
Datenbankabfragen reduzieren Geschwindigkeit steigern Speicherverbrauch reduzieren

6 Überblick Vorstellung Die Aufgabe Tools Maßnahmen Fazit

7 Tools Xdebug https://xdebug.org/ Z-Ray
ShyimProfiler Tideways

8 Überblick Vorstellung Die Aufgabe Tools Maßnahmen Fazit

9 Maßnahmen SEO Index / URL Rewrite Cache Lifetime SQLs reduzieren
Caches Kleine Verbesserungen

10 Seo Index / URL Rewrite Erweiterung der 's_rewrite_url' Tabelle
Controller / action / element_id SEO Indexer erweitert

11 Seo Index / URL Rewrite Engine/Shopware/ Core/sRewriteTable.php
Components/SitePageMenu.php Components/Translation.php

12 Seo Index / URL Rewrite Was hat es gebracht? Schnellere DB Abfragen
Keine Volltextsuche Weniger PostFilter URL Generierungen Reduzierung der SQL-Abfragen Reduzierung der IN-Queries bei PostFilter

13 Maßnahmen SEO Index / URL Rewrite Cache Lifetime SQLs reduzieren
Caches Kleine Verbesserungen

14 Cache Lifetime Engine/Shopware/Bundle/StoreFrontBundle/
Gateway/DBAL/FieldHelper.php GetTableFields() Cachelaufzeit setzen

15 Cache Lifetime 0 vs. false vs. Null
engine/Library/Zend/Cache/Backend/File.php

16 Cache Lifetime Was hat es gebracht? Cache für Tabellenspalten
Weniger SQL-Abfragen schnellerer Zugriff

17 Maßnahmen SEO Index / URL Rewrite Cache Lifetime SQLs reduzieren
Caches Kleine Verbesserungen

18 SQLs reduzieren engine/Shopware/Bundle/StoreFrontBundle/
Service/Core/ListProductService.php Methode: getList() Entfernen von Methoden

19 SQLs reduzieren engine/Shopware/Components/
Compatibility/LegacyStructConverter.php Methode: getCategoryCanonicalParams() Params festgesetzt Methode getCategoryChildrenCount() ersetzt gesammelt holen mit Cache

20 SQLs reduzieren

21 SQLs reduzieren Was hat es gebracht? Cache für Kategorieanzahl
Weniger SQL-Abfragen Weniger DB-Last

22 Maßnahmen SEO Index / URL Rewrite Cache Lifetime SQLs reduzieren
Caches Kleine Verbesserungen

23 Caches | Config engine/Shopware/Components/
Plugin/Namespace.php Plugin/DBALConfigReader.php Shopware Cache für Pluginconfiguration Verbessertes Abholen der Pluginconfigs SQL umgestellt und gesammelt abgeholt Interner Cache pro Plugin

24 Caches | Translation engine/Shopware/Components/
Translation.php Shopware Cache für Translations Verbessertes Abholen der Translations Interner Cache pro Translation

25 Caches | Emotion engine/Shopware/Bundle/EmotionBundle/
Service/EmotionElementService.php Cache für Emotion-Elements Cache für Emotion-Elements Data Schnelleres Laden der Daten Weniger SQL-Abfragen Schnellerer Zugriff

26 Caches | Emotion engine/Shopware/Bundle/StoreFrontBundle/
Service/Core/MediaService.php Gateway/DBAL/ListProductMediaGateway.php Methoden hinzugefügt: GetByPath | getListByPath für Emotion Elemente Einsparung: 1 Abfrage pro Element

27 Caches | Core engine/Shopware/Core/sAdmin.php Cache für: Payment Means
Countries Translations Shipping UserData Risks

28 Caches | Models engine/Shopware/Models/
Category/Repository.php Methode: getCategoryPathBefore() Ermittlung der Elternkategorie verbessert Rekursion vermieden Weniger SQL-Abfragen

29 Maßnahmen SEO Index / URL Rewrite Cache Lifetime SQLs reduzieren
Caches Kleine Verbesserungen

30 Kleine Verbesserungen
engine/Shopware/Bundle/StoreFrontBundle/ Gateway/DBAL/FieldHelper.php Felder für das Listing reduzieren Description Description_long Reduzierung DB Traffic

31 Kleine Verbesserungen
engine/Shopware/Bundle/StoreFrontBundle/ Service/Core/ContextService.php

32 Kleine Verbesserungen
Was hat es gebracht? Nur ein Shopcontext Objekt Cache greift bei Mehrfachzugriff Weniger Objekte Speichereinsparung

33 Tipps und Tricks Shopbetreiber Services Redis / Memcache CDN
Media / Speicherplatz

34 Sonstiges | Shopbetreiber
Shopbetreiber Niemals mehrere Mailadressen eingeben Templat -Service erweitern Eigene Freitextfelder für CC/BCC

35 Sonstiges | Services Services ab Shopware 5.2 in services.xml
Services richtig dekorieren Korrekte(s) Interface/Klasse verwenden Den Elternservice ansprechen Servicename '.inner' Nur die Methoden überschreiben die man braucht

36 Sonstiges | Redis / Memcache
Memcache für die Sessions Locking ab 5.3 Redis für den Cache

37 Sonstiges | CDN / Media !! Vorsicht bei der Verwendung von CDN !!
Stolperfalle: /media/.htaccess Der Sessionkiller bei CDN Benutzung Es droht Konversionverlust

38 Sonstiges | Speicherplatz
Der Media-Ordner kann sehr groß werden Abhängig von: Anzahl der Thumbnails + HiRes Thumbnailgröße Media regelmäßig aufräumen Nicht benötigte Thumbnails entfernen

39 Fazit Man kann noch einiges optimieren Events / Services verwenden
Updates einspielen Nicht alles als gegeben hinnehmen Individuell an die Bedürfnisse anpassen


Herunterladen ppt "Shopware Core Optimierung"

Ähnliche Präsentationen


Google-Anzeigen