Features

Neuerungen und Änderungen


Neue Features seit der 3.11.1.0

Integration von Online-Hilfen

Einen Shop betreiben heisst auch Fragen haben, irgendwas ist immer. Damit ihr an der Stelle besser an die Hand genommen werdet, sind wir dabei unser Shophandbuch in eine Webvariante umzugestalten. Diese wird auch im Shop zu den Funktionen in denen ihr euch gerade bewegt kontextbezogen Hilfe liefern. Eine Suche im Handbuch ist dabei ebenso in die Backendsuche integriert worden, wie ein schneller Weg zum Gambio Kundenforum.

SEO-Maßnahmen

Wir überwachen ständig eine Referenzmenge von Shops, und beobachten wie diese für Suchmaschinen ranken. Dabei gab es in jüngerer Zeit wieder einmal neue Erkenntnisse, die wir in Shopanpassungen für alle umsetzen. Die Liste der neuen Ansätze ist dabei etwas länger, ich empfehle dazu diesen Artikel gesondert zu lesen um einen Überblick zu bekommen. Alle Dinge die dort beschrieben sind, sind in diesem Release nun enthalten.

Hintergrundjobs

Hintergrundjobs, vielen auch als Cronjobs geläufig, werden genutzt um wichtige Aufgaben zu verrichten, ohne dass jemand im Browser klicken oder darauf warten muss. Die Anzahl der sinnvollen Usecases ist unglaublich vielfältig, auch für den Shop konnte man in der Vergangenheit schon so einige Dinge mit Cronjobs erledigen. Nicht gut dabei war bislang, dass das Ganze nicht zentral im Shop organisiert war, und man für einen Shop oft mehrere Cronjobs einrichten musste (z.B. Gastkonten löschen und CSV Exporte). Wir haben ab 3.11 eine zentrale Jobverwaltung, mit der wir in Zukunft Ordnung schaffen wollen, und mit den wir auch Modulentwicklern Wünsche erfüllen wollen. Für alle Beteiligten soll die Komplexität sinken und die Arbeit vereinfacht werden. Wir sind noch nicht fertig mit dem ganzen Thema, das wird man über die Zeit ein wenig ausentwickeln müssen, aber einige neue Möglichkeiten werden wir schon zu Beginn bereit haben. Das wären zum Beispiel die regelmäßige Erzeugung der XML-Sitemaps ohne nötige manuelle Schritte oder der Aufruf des Image-Processings bei Bedarf.

Neue Fehlerberichterstattung

Optional kann man den Shop nun so konfigurieren, dass Fehlerberichte automatisch an uns übermittelt werden. Jeder Eintrag, der im Error Log eines Shops aufläuft, wird dann automatisch auch an uns gesendet. Wir erfassen diese Meldungen, diese werden nach Fehlermustern sortiert, und wir bekommen Auswertungen welcher Fehler draussen wie oft auftritt. Wir können dann gezielt Lösungen und Verbesserungen erarbeiten, und kriegen ein viel genaueres Bild über eure Probleme. Interessant ist da auh folgender Blickwinkel: Bisher ist als Shopbetreiber bei Fehlern komplett stillhalten immer schwierig, denn wenn man uns nicht aktiv von seinen Problemen berichtet, dann bemerken wir diese gar nicht. Es können auch Dinge leichter untergehen, wenn man seine Logs nicht selbst regelmässig prüft oder von Kunden im Problemfall Feedback bekommt.

Weiterer Ausbau der Sprachfähigkeiten des Shops

Im Backend des Shops gibt es jetzt neu 2 Funktionen statt einer zur Aktivierung/Deaktivierung von Sprachen. Die eine wirkt aufs Frontend, die andere auf das Backend. Es war oft gewünscht, dass inaktive Sprachen im Backend nicht angezeigt werden sollen. Hätte man das einfach an den vorhandenen Schalter angeschlossen, hätte man als Händler aber auch nicht beginnen können neue Sprachen einzupflegen, bevor diese sichtbar gemacht werden. Nun kann man inaktive Sprachen gänzlich tilgen und sich auf Wunsch bei Internationalisierung in Ruhe vorbereiten, ohne Kunden Zwischenstände zu zeigen. Wer das gar nicht will, sieht gar nichts. Für das Ziel wurden alle Backendseiten angepasst. Ausserdem wurden die Flaggenicons gründlich aufgeräumt, es wird jetzt pro Sprache nur noch exakt 1 Icon verwendet, anstatt unterschiedlichen.

Performance Optimierungen

Wie immer stecken auch in diesem Release Performanceoptimierungen. Es wurden einige Funktionen überarbeitet um schneller Ergebnisse zu liefern, einige unnötige Durchläufe von Funktionen verhindert, viele kleine Baustellen. Je nach Szenario und gesetzten Optionen sind die Veränderungen verschieden spürbar.

Neues Nutzersessionhandling

Das Sessionhandling konnte bisher nur mit Sessions in Dateien arbeiten, die im cache Ordner des Shops gespeichert wurden. Ab jetzt werden auch andere Sessionspeicher wie "Redis" oder "Memcached" oder in der Datenbank in MySQL unterstützt. In nur wenig besuchten Shops mit wenigen parallelen Besuchern wird das nicht so ins Gewicht fallen, aber in gut besuchten Shops hat das großes Potenzial. Auch für das Clustering von Shopinstanzen über mehrere Maschinen bringt das Vereinfachungen, dieses Szenario ist tendenziell bei sehr grossen immer mal ein Thema. Hier gebe ich auch mal ein Performance Beispiel:

Der gezeigte Vergleich im Diagramm wurde in einer zwischen den Läufen gleichbleibenden Testumgebung durchgeführt. Als Test wird apachebench benutzt, es wird damit 1000x die Startseite abgerufen, mit jeweils 8 parallelen laufenden Abrufen. Wird ein Abruf fertig, feuert der nächste. Die Höhenachse am Diagramm stellt die benötigte Zeit dar bis alle Abrufe beendet waren, das bedeutet je kürzer der Balken ist, desto schneller lief das durch. Der bisher einzig mögliche Fall ist "files", hier brauchen wir für die 1000 Startseitenabrufe 229 Sekunden. Bei Wechsel auf ein Sessionhandluing via Redis war die gleiche Menge Anfragen nach 111 Sekunden abgearbeitet, mit MySQL als Backend sogar in 104 Sekunden. Das ist grob 100% schneller!

Neue REST-API Funktionen

Kurze Erinnerung: Die REST-API des Shops ist unsere Schnittstelle direkt im Shop, mit der externe Systeme wie Warenwirtschaften, etc. geregelt und normiert Daten aus dem Shop holen und hineinschreiben können sollen. So wie wir mit jedem der vergangen Releases den Funktionsumfang der API bewusst erweitert haben, haben wir auch diesmal viele weitere Daten verfügbar gemacht.

Schon da, trotzdem eine Erwähnung wert

Die folgenden Features waren ursprünglich mal als 3.11 Features geplant. Auch wenn diese jetzt auch für ältere Shopversionen rückportiert werden, hat vielleicht noch nicht jeder mitbekommen dass es diese gibt, daher erwähne ich sie nochmals kurz:

Und noch ein paar kleine Perlen...


Neuerungen und Änderungen in der 3.11.1.0 beta1

Neuerungen und Änderungen in der 3.11.1.0 beta2

Neuerungen und Änderungen in der 3.11.1.0 rc1

Neuerungen und Änderungen in der 3.11.1.0

Neuerungen und Änderungen in der 3.11.1.1

Neuerungen und Änderungen in der 3.11.1.2

Neuerungen und Änderungen in der 3.11.2.0 beta1

Neuerungen und Änderungen in der 3.11.2.0

Neuerungen und Änderungen in der 3.11.3.0 beta1

Neuerungen und Änderungen in der 3.11.3.0

Neuerungen und Änderungen in der 3.12.0.0 beta1

Neuerungen und Änderungen in der 3.12.0.0