Pizza Pizza

Pizza Pizza verkürzt mit AppDynamics die Problembehebungsdauer von Tagen auf Minuten

Mit mehr als 600 Restaurants und über 3.000 Mitarbeitern ist Pizza Pizza die größte Pizzakette in Ontario (Kanada). Die Kunden können die Pizza telefonisch, über die Website und über Mobilgeräte bestellen. Ein Callcenter mit mehr als 400 Mitarbeitern nimmt die Bestellungen für alle Restaurants über eine interne Anwendung entgegen. Diese Anwendung verarbeitet jede Woche Hunderttausende von Transaktionen und muss immer funktionieren und online sein, um die Wünsche der hungrigen Pizza Pizza-Kunden zu erfüllen.

Beeinträchtigungen bei Website und Callcenter durch die Anwendungsleistung

Amar Narain, Director of IT bei Pizza Pizza, war dafür verantwortlich, dass die Anwendung immer funktionierte, ganz besonders in Spitzenzeiten. Diese Aufgabe wurde leider durch mangelnde Transparenz bei den Anwendungsebenen erschwert. Das Entwicklungsteam gab alle zwei Wochen im Rahmen von Werbeaktionen neuen Code in die Produktion, und dies führte häufig zu einer starken Beeinträchtigung der Anwendungsleistung. Ohne Transparenz hinsichtlich der Ursachen der Leistungsengpässe konnten Narain und das Entwicklungsteam bei Ausfällen und Verlangsamungen keine effiziente Vorauswahl treffen.

Bei Ausfällen musste Narains Team das Problem in den Protokollen ermitteln. Bei ungefähr 50 Tomcat-Instanzen war dieses Verfahren extrem zeitaufwändig: Häufig wurden 20 bis 30 Mitarbeiterstunden benötigt, um die Fehlerquelle zu finden, und danach war das eigentliche Problem noch lange nicht gelöst. „In der Regel haben wir versucht, Probleme einfach durch zusätzliche Ressourcen zu lösen, beispielsweise durch weitere Tomcat-Instanzen oder mehr Verbindungen zu den Datenbanken“, so Narain.

Diese Leistungsprobleme waren sowohl für die Kunden der Website als auch für die Mitarbeiter des Callcenters von Nachteil, die telefonische Bestellungen entgegennahmen. Je langsamer die Anforderung war, desto länger dauerten Bestellannahme und Anruf. „Die durchschnittliche Gesprächsdauer sollte etwa 2 Minuten und 20 Sekunden betragen. Unsere lag bei 2:25 bis 2:35, was zwar nicht dramatisch klingt, aber in dieser Branche sind zehn Sekunden eine Ewigkeit“, so Narain. „Zehn Sekunden kann in Spitzenzeiten bedeuten, dass teilweise 20 bis 30 Mitarbeiter weniger die Kunden bedienen.“

Vor der Bereitstellung der AppDynamics-Plattform behoben unsere Lösungen nur den jeweiligen Zwischenfall. Jetzt können wir die tatsächliche Ursache ermitteln und das Problem lösen.

Wenn die Entwickler neuen Code in der Produktion veröffentlichten, wirkte sich das zusätzlich auf die Anrufdauer aus. „An fast jedem Freitagabend beobachteten wir entweder eine Verlangsamung – die Gesprächsdauer betrug normalerweise zwischen 2:47 und 2:50 –, oder wir waren mit einem Absturz konfrontiert“, erläutert Narain.

Normalerweise waren nur wenige Mitarbeiter von den Abstürzen betroffen, teilweise hatten sie jedoch gravierendere Auswirkungen. „Einige Zwischenfälle verursachten erhebliche Kosten“, so Narain. „Ein Ausfall legte unser gesamtes Callcenter an einem Freitagabend eine Stunde lang lahm. Dieser Ausfall hat uns vermutlich 100.000 bis 150.000 USD gekostet. Danach war uns klar, dass wir etwas ändern müssen.“

Mehr Transparenz und schnellere Transaktionen dank AppDynamics

Pizza Pizza entschloss sich dazu, Application Performance Management (APM)-Lösungen zu testen. Die erste Lösung, die sich Narain genauer ansah, war zu teuer und erfüllte die Anforderungen nicht. Dann wurde Pizza Pizza auf die AppDynamics-Platform aufmerksam und erkannte deren Vorteile für das Unternehmen.

Unsere durchschnittliche Gesprächsdauer im Callcenter lag bei 2:25 bis 2:35 – etwa 10 Sekunden über dem Branchendurchschnitt. Jetzt beträgt sie nur noch 2:15 bis 2:20.

Nach der Installation machte sich die AppDynamics-Lösung für Pizza Pizza schnell bezahlt. Innerhalb weniger Tage optimierten Narain und sein Team die Datenbankanforderungen, die einen Großteil der Ressourcen nutzten. „Ein Problem bestand in der Art, wie Anforderungen des Callcenters mit der Kundendatenbank interagierten“, so Narain. „Die Transaktionen führten Lese- und Commit-Vorgänge aus, obwohl keine Daten geschrieben wurden. Das verursachte bei der Anwendung überflüssigen Overhead.“ Er ergänzt: „Als wir diese SQL-Anweisungen optimiert hatten, beobachteten wir eine große Veränderung bei den Rückmeldungen, die wir von den Managern des Callcenters bekamen: Sie hatten eine deutliche Verbesserung der Reaktionszeit bei der Bestellungsannahme bemerkt.“

Schnellere Problemlösung und weniger Fehler in der Produktion

Dank der AppDynamics-Plattform konnten Narain und sein Team Leistungsprobleme wesentlich schneller lösen. Aufgaben, für die früher 20 bis 30 Stunden erforderlich waren, sind nun in 15 bis 30 Minuten erledigt. „Vorher waren unsere Lösungen von den Rückmeldungen der Benutzer und von Protokollen abhängig. Und sie behoben nur das jeweils aktuelle Ereignis und nicht auch Prozessvorgänge. Jetzt können wir die tatsächliche Problemursache finden und lösen“, so Narain.

Darüber hinaus beeinträchtigten die agilen Veröffentlichungszyklen von Pizza Pizza die Anwendungsleistung nicht mehr. Die Entwickler und DBAs identifizierten dank der AppDynamics-Lösung Probleme im Code, bevor dieser für die Produktion freigegeben wurde. So ließen sich Engpässe und Ausfälle verhindern.

„Gleich zu Beginn der Arbeit mit dem Tool erkannte das Entwicklungsteam das enorme Potenzial, das die bereitgestellte Übersicht über das System eröffnete“, stellt Narain fest. „Dank der AppDynamics-Plattform identifizieren wir Probleme, bevor es zu Ausfällen kommt. So sparen wir Geld und stellen die Zufriedenheit unserer Kunden sicher. Genau darauf kommt es an.“

Dank der AppDynamics-Plattform identifizieren wir Probleme, bevor es zu Ausfällen kommt. So sparen wir Geld und stellen die Zufriedenheit unserer Kunden sicher. Genau darauf kommt es an.