Gerade was neues erlebt: Bei unserem Kreditkarten-Processor sind gestern Abend gegen 18:00 die Antwortzeiten auf über 6 Sekunden hoch. Die Folge: timeouts und abgebrochene Zahlungen per Kreditkarte. Der technische Kundendienst bei denen: nicht mehr besetzt. Heute morgen gegen 9 Uhr dann die Meldung: ja, sie haben ein Problem, wird voraussichtlich bis Mittag andauern.
Wir haben für die ganze Nacht bis jetzt Kreditkarten bei uns ausgeschaltet. Wie hoch der Schaden ist, ist schwer zu sagen. Die meisten Kunden haben hoffentlich Lastschrift, Paypal oder ClickandBuy gewählt.
Was wir daraus lernen:
- Eigentlich sollten wir zwei Kreditkartenprocessor anbinden, damit so etwas nicht passiert. Das ist ein SPOF und wäre z.B. in der Weihnachtszeit ziemlich unangenehm.
- Die Möglichkeit, einzelne Zahlungsmethoden auszuschalten, hat gut funktioniert. Das muss aber die technische Bereitschaft machen. Eventuell sollte das über ein Admin-Interface möglich sein? Schliesslich bekommen die Leute im Kundendienst so etwas als erste mit.
- 24h Notfall-Kundendienst würde man bei einem börsennotierten Unternehmen erwarten. Gibt es aber nicht. Eventuell wechseln? Oder sich die Handynummer des CTO geben lassen…
Als kleine Anregung für andere e-Commerce Unternehmen.
Wieso nicht den Timeout erhöhen? Ich kann mich noch an Zeiten erinnern, in denen die Bearbeitung einer Kreditkartentransaktion gut und gerne 30 Sekunden gedauert hat.
Johannes
September 11th, 2009
Ich habe halt Sorge, dass der Browser Timeout vor dem XML-Client Timeout kommt. Das ist dann unkontrolliert. So kann ich den Timeout “fangen” und dem Kunden wenigstens noch eine ordentliche Meldung anzeigen.
Die Alternative wäre eine Art polling, das müssten wir aber auch bauen.
Jan
September 11th, 2009
P.S. Auch wenn man pollt, sollte man trotzdem über einen zweiten Processor nachdenken. Wenn der mal ganz weg ist…
Jan
September 11th, 2009
Zumindest Firefox wartet beliebig lange, sobald eine HTTP-Verbindung bereits zustandegekommen ist. Auf das Zustandekommen der Verbindung wartet er aber nur 30 Sekunden.
Polling per XMLHttpRequest kommt beim Kunden aber in der Tat sicher besser an, als ihn ewig vor einer halbfertig geladenen Seite warten zu lassen.
Johannes
September 11th, 2009