📅
Im Zuge unserer Serie bessere Administrationsinterfaces zu erstellen war diese Woche die Inventar- und Preispflege an der Reihe.
Wir haben wieder ein ähnliches mehrspaltiges Interface mit W2UI erstellt, wie auch bei den zuletzt gebauten Administrationssichten.
Ein nettes Feature von W2UI, das wir bei der Pflege von Daten zu schätzen gelernt haben, ist die Möglichkeit, die dargestellten Spalten und deren Breiten pro Widget in einem Cookie im Browser zu speichern.
Wir haben diese Woche noch eine Optimierung in der Wertepflege
angebracht, indem wir klassische N+1 Abfragen optimiert haben.
Darunter versteht folgendes ungeschickte Verhalten: Wir haben
zunächst ein Produkt von der Datenbank gelesen, dann dazu die
entsprechenden N Stück Werte und im nächsten Schritt die
entsprechenden Eigenschaften und Eigenschaftengruppen. Formuliert
man die Abfrage entsprechend anders, kann man all diese Daten in
einem Schritt von der Datenbank lesen.
Die eigentliche Belastung der Datenbank reduziert sich damit von
etwa 75 Millisekunden auf etwa 2 Millisekunden.
Eine entsprechende Optimierung haben wir für den Kategorienbaum im Produktmanager durchgeführt. Mit ihm können nun auch der Produktkategorien umsortiert werden. Wieder sind wir mit dem im Projekt erworbenen Wissen um rund zwei Größenordnungen (also einen Faktor 100) schneller, als wir das noch letztes Jahr gewesen wären.