Mit Fingerspitzengefühl zum Erfolg – Drei Tipps für die optimale Webshop-Integration einer Recommendation Engine

prudsys, prudsys RDE, Omnichannel, Handel, E-Commerce, Echtzeit, Personalisierung, Onlineshop, Integration, Recommendation Engine

Mit der Implementierung einer Empfehlungsmaschine in den eigenen Webshop verfolgen Onlineshopbetreiber unterschiedliche Ziele für ihr Business. Allen voran stehen natürlich die Umsatz- und Gewinnmaximierung, aber auch die Steigerung der Servicequalität für den Kunden stellt einen wichtigen Benefit dar.

Die Welt der Onlineshops ist bunt und so erfordert es Fingerspitzengefühl, im eigenen Webshop die passenden Empfehlungstypen hinsichtlich der Shop-Gegebenheiten auszuwählen und einzubinden. Ein entscheidendes Feature jeder Recommendation Engine sollte es deshalb sein, eine überzeugende Auswahl an Empfehlungsarten anzubieten, um die Anzeige verschiedenster Produktempfehlungen zu ermöglichen.

Unabhängig von der eingesetzten Software besteht die Herausforderung für die IT-Verantwortlichen darin, die Empfehlungen bestmöglich in den Webshop zu integrieren, so dass die Inhalte optimal und in kürzester Zeit verfügbar sind. Im Consulting der prudsys AG sind wir täglich mit diesen Fragestellungen konfrontiert. In diesem Blogbeitrag möchte ich euch am Beispiel der prudsys Realtime Decisioning Engine (kurz: prudsys RDE) einen kurzen Überblick geben, was es bei der Integration einer Recommendation Engine bzw. eines Recommender Systems zu beachten gilt.

 1) Asynchrone vs. synchrone Einbindung der Recommendation Engine

Eine synchrone Einbindung bedeutet, dass sich eine Shop-Seite in der festgelegten Reihenfolge der HTML-Struktur aufbaut. Die vollständige Seite ist also erst zu sehen, wenn alle Elemente geladen wurden. Ist ein Element einer Seite nicht verfügbar, wird der Aufbau ab dieser Stelle ausgesetzt und blockiert damit die restliche Seite. Im Gegensatz dazu bedeutet eine asynchrone Einbindung, dass Elemente einer Seite unabhängig von einer festen Reihenfolge geladen werden und dadurch zu keiner Blockade führen.

Wird die prudsys RDE synchron eingebunden, wartet der Shop auf die Rückgabe der Recommendations und baut erst danach die Seite vollständig auf. Obwohl die prudsys RDE Empfehlungen in Echtzeit berechnet und an den Shop zurück gibt, hängt die Auslieferungszeit immer noch von anderen Faktoren, z.B. dem Netzwerk-Traffic, ab. Die Antwortzeit kann daher variieren, inkl. Schwankungen im Tagesverlauf. Eine synchrone Einbindung unterliegt diesen Abhängigkeiten und die Shop-Ladezeiten können dadurch unter Umständen negativ beeinflusst werden (wobei wir hier immer noch von Zeiten im Millisekunden-Bereich sprechen).

Aus diesen Gründen empfehlen wir eine asynchrone Anbindung der Recommendation Engine. Das bedeutet, dass der Aufbau einer Shop-Seite nicht durch das Laden einzelner Elemente beeinflusst wird, sondern parallel dazu stattfindet. Die Shop-Ladezeiten sind somit in jedem Fall unabhängig, da die Empfehlungen separat geladen werden.

Durch ein Timeout kann zudem sichergestellt werden, dass die Shop-Seite auch bei einem Ausfall der Produktempfehlungen (zum Beispiel durch Netzwerküberlastung, Stromausfall, Serverausfall) ausgeliefert wird und die Kunden keine Leerseite vorfinden. Grundsätzlich ist darauf zu achten, dass eine fehlende Rückgabe nicht das Layout des Shops stört. Dies kann z.B. durch die Einbindung von Top-Produkten realisiert werden. Auch eingesetzte Reverse Proxys oder vergleichbare Systeme müssen mit einer Nicht-Antwort eines Servers adäquat umgehen können.

 2) Parallele vs. sequentielle Abfrage der Empfehlungen

Eine sequentielle Abfrage bedeutet, dass Empfehlungen in einer linearen Reihenfolge abgefragt werden. Die Ausführungszeit summiert sich aus allen Einzelabfragen. In einer parallelen Abfrage hingegen können mehrere Produktempfehlungen gleichzeitig ermittelt werden, wodurch die Ausführungszeit lediglich der längsten Einzelabfrage entspricht.

Wenn auf einer Shop-Seite mehrere Empfehlungstemplates eingebunden werden, wird pro Template ein HTTP-Aufruf gesendet. Als Template bezeichnen wir einen Container auf einer Seite, der verschiedene Boxen mit Produktempfehlungen enthält. So können verschiedene Empfehlungstypen in einem Template angezeigt werden. Diese Anfragen sollten parallel gestellt werden und nicht aufeinander warten. Damit wird die Anzeige der Empfehlungen beschleunigt. Im Gegensatz dazu hat eine sequentielle Abfrage den Nachteil, dass zusätzliche Templates den Seitenaufbau verlangsamen können.

Bei der Nutzung der prudsys RDE empfehlen wir generell, das Template-Box Konzept anzuwenden. Damit wird genau ein Template pro Shop-Seite angelegt und so konfiguriert, dass unterschiedliche Empfehlungslogiken in verschiedenen Boxen umgesetzt werden. Das hat zur Folge, dass pro Seite nur ein HTTP-Request aufgerufen und in Echtzeit beantwortet wird, wodurch die Ladezeiten geringstmöglich (wenige Millisekunden) beeinflusst werden.

3) Wiederverwendung von Connections nach HTTP-Richtlinie (Connection Pooling)

Unter einem Connection Pool versteht man einen Cache von bestehenden HTTP-Verbindungen. Existiert dieser Pool, werden aktive HTTP-Verbindungen nach einer Anfrage nicht geschlossen, sondern in dem Cache hinterlegt. Erfolgt eine neue Anfrage innerhalb kurzer Zeit, wird die vorhandene Verbindung weiter genutzt. Auf diese Weise spart man Zeit und Server-Ressourcen, die ein erneuter Verbindungsaufbau kosten würde.

Diese Vorgehensweise hat diverse Vorteile: Es sind weniger HTTP-Verbindungen gleichzeitig offen, wodurch CPU- und RAM-Nutzung reduziert werden. Gleichzeitig erfolgt eine Verringerung der Netzwerklast, was insbesondere zu Traffic-Hochzeiten einen spürbar positiven Einfluss hat. In jedem Fall wird die Latenz durch den Verbindungsauf- und -abbau deutlich reduziert. All diese Vorteile resultieren in verkürzten Antwortzeiten, die sowohl für den Shop-Betreiber als auch für den Kunden von großem Interesse sind.

Werden diese drei grundlegenden Integrationshinweise bereits zu Projektbeginn berücksichtigt, steht einer erfolgreichen und effizienten Implementierung der Recommendation Engine nichts mehr im Wege.

Diese Tipps gelten übrigens nicht nur für den Einsatz der prudsys RDE, sondern vielmehr für jegliche Art von Software, die von Drittanbietern im eigenen Shop-System eingebunden wird.

Autorin: Jana Ludwig | prudsys AG


Weiterführende Artikel:

1 Antwort

Trackbacks & Pingbacks

  1. […] Mit Fingerspitzengefühl zum Erfolg – Drei Tipps für die optimale Webshop-Integration einer Recom… […]

Ihr Kommentar

Sie haben weitere Anmerkungen zu diesem Thema?
Wir freuen uns auf eine spannende Diskussion.

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *