Autorisierungs-Backbone der Credit Suisse: Hochlast trifft Hochverfügbarkeit.

Zürichsee von Uetliberg
Photo: Wikimedia

AURA Runtime

Briefing

Neuentwurf und Entwicklung der AURA Runtime — das zentrale Identity- und Access-Management-Backend der Credit Suisse — zur Ablösung einer monolithischen Architektur durch unabhängig skalierbare Microservices, deploybar in vier globalen Regionen.

Technologie

Java 17, Spring Boot 3.1, OpenShift (Kubernetes), Apache Kafka, Oracle DB, Prometheus, Grafana, Jenkins, Helm.

Vier unabhängige Backend-Services ersetzen den Monolithen. Kafka übernimmt Event-Streaming und Caching von Berechtigungsdaten und entlastet damit die Oracle-Datenbank deutlich. Alle Services laufen auf OpenShift und werden über Helm Charts und eine Jenkins-CI/CD-Pipeline deployt.

10M+

Anfragen pro Tag

4 Regionen

CH, AMER, EMEA, APAC

10 Monate

von Entwurf bis Rollout

Ausgangslage

Mit über 10 Millionen Anfragen pro Tag und Spitzenwerten von 80.000 pro Minute allein in der Schweiz stieß das bestehende Monolithsystem an seine Grenzen. Services konnten nicht unabhängig voneinander skalieren. Ein einzelner Engpass konnte die gesamte Plattform beeinträchtigen. Die Oracle-Datenbank stand unter konstantem Druck.

Hinzu kam eine weitere Herausforderung: Die meisten Clientapplikationen verwendeten eine proprietäre EJB-Client-Library und konnten nicht gleichzeitig migrieren. Die Migration musste für sie vollständig transparent sein. Die Aufgabe war klar – ein kompletter Architekturneuentwurf, ohne den laufenden Betrieb zu stören.

Screenshot des AURA Runtime Audit-Logs mit zeitgestempelten Autorisierungsereignissen und Ergebnis-Filtern.

Entwicklung

Wir entwarfen und implementierten eine Microservices-Architektur auf OpenShift – der Monolith wurde durch vier unabhängig skalierbare Backend-Services abgelöst. Apache Kafka übernahm Event-Streaming und Caching von Berechtigungsdaten und entlastete damit die Oracle-Datenbank erheblich. Zusätzlich entwickelten wir einen Load-Simulator, um jeden Service vor dem regionalen Rollout unter realistischer Last zu testen.

Für die transparente Migration wurde eine Kompatibilitätsschicht eingeführt, welche die proprietäre EJB-Client-Library mit der neuen Plattform verbindet – Legacy-Clients konnten weiterlaufen, ohne Änderungen vornehmen zu müssen. Monitoring via Prometheus und Grafana, eine Jenkins-Pipeline sowie Helm-basierte Deployments sicherten von Beginn an den konsistenten Betrieb in allen vier Regionen.

Screenshot des AURA Runtime Request-Analytics-Dashboards mit Autorisierungsanfragen über die Zeit in allen Regionen.

Ergebnis

Heute verarbeitet das System über 10 Millionen Autorisierungsanfragen pro Tag – in der Schweiz, EMEA, AMER und APAC. Jeder der vier Services skaliert unabhängig. Die Last auf der Oracle-Datenbank ist dank Kafka-basiertem Caching und Event-Handling deutlich gesunken.

Was einmal ein fragiler Monolith an der Kapazitätsgrenze war, ist heute eine verteilte, hochverfügbare Plattform – gebaut für die Anforderungen eines der größten Finanzinstitute der Welt. Gemeinsam mit dem Credit-Suisse-Support-Team sicherten wir eine reibungslose Übergabe und dauerhaften stabilen Betrieb nach dem Rollout.

Screenshot der AURA Runtime Service-Übersicht mit allen vier Backend-Services im Gesundheitsstatus über vier globale Regionen.

Überzeugt?

Weitere Projekte