// case study
Cloud-Migration einer Legacy-Anwendung
Gezielte Auslagerung cronjob-gesteuerter Begleitprozesse aus einem PHP-Monolithen in eine event-getriebene AWS-Architektur — schrittweise, über 20+ Prozesse, ohne Betriebsunterbrechung.
Kundenprojekt (NDA)
Q3/2025
10.000 – 50.000 €
PHP, Lambda, EventBridge, SQS, SES, RDS, S3
// ausgangslage
Ein Monolith, den seine Begleitprozesse ausbremsten
Die Kernanwendung — Backend, zentrale API und Geschäftslogik — lief als PHP-Monolith und sollte das auch bleiben. Darin steckten aber auch viele begleitende Aufgaben: wiederkehrende API-Abrufe, Datenverarbeitung, Report-Generierung und der Versand transaktionaler E-Mails — ausgeführt als Cronjobs und lokale Scripts auf einer einzelnen Maschine.
Genau diese Begleitprozesse machten Probleme. Die Report-Generierung griff direkt auf die Produktiv-Datenbank zu; aufwändige Auswertungen erzeugten Lastspitzen genau dort, wo das Tagesgeschäft lief. Der E-Mail-Versand lief inline im jeweiligen Prozess — bei langsamem Mailserver wartete der Nutzer mit. Migriert wurde deshalb nicht der ganze Monolith, sondern gezielt die Teile, die ihn ausbremsten.
// lösungsweg
Schrittweise herauslösen statt Big-Bang
Statt eines riskanten Komplett-Rewrites haben wir gezielt einzelne Teile aus dem Monolithen herausgelöst. Gemeinsam mit dem Auftraggeber haben wir zuerst die größten Painpoints identifiziert und nach Schmerz und Nutzen priorisiert — herausgelöst wurde Stück für Stück, während die Kernanwendung und der Betrieb unverändert weiterliefen.
Die herausgelösten Cronjobs und Scripts wurden zu event-getriebenen Lambda-Funktionen, orchestriert über EventBridge. S3 übernahm die Ablage von Artefakten und Reports, SES den Mailversand, RDS die Datenhaltung. Über mehrere Wochen wanderten so 20+ Begleitprozesse von der einzelnen Maschine in verwaltete, nutzungsbasiert abgerechnete AWS-Services.
Verworfen: Big-Bang-Rewrite oder reines Lift-and-Shift
Ein kompletter Neubau hätte eine lange Phase ohne sichtbaren Wert bedeutet, bei hohem Risiko. Ein reines Lift-and-Shift in die Cloud hätte die eigentlichen Probleme — die Last auf der Produktiv-Datenbank und fragile Scripts auf einer einzelnen Maschine — einfach mitgenommen. Das gezielte Herauslösen löste die Painpoints, ohne den Betrieb je anzuhalten.
// architektur
Last und Latenz raus aus dem kritischen Pfad
Reports auf ein Datenbank-Replica. Der größte einzelne Hebel war die Einführung eines Datenbank-Replicas. Report-Jobs und alle nicht geschäftskritischen Prozesse greifen seither ausschließlich auf das Replica zu — vollständig losgelöst von der Produktiv-Datenbank. Eine schwere Auswertung kann das Tagesgeschäft nicht mehr ausbremsen, weil sie auf einer separaten Kopie läuft.
Transaktionale E-Mails asynchron über SES. Zuvor wurden E-Mails inline im jeweiligen Prozess per SMTP versendet — bei längeren Antwortzeiten des Mailservers musste der Nutzer mit warten. Heute schreibt der Nutzer-Prozess nur noch die Geschäftslogik und pro Mail einen Eintrag in eine separate, asynchrone SQS-Queue. Der Versand selbst läuft im Hintergrund über SES. Für den Nutzer entfällt jede zusätzliche Wartezeit.
// ergebnis
Event-getrieben, entkoppelt, nutzungsbasiert
20+ Begleitprozesse liefen nach mehreren Wochen auf AWS — ohne eine einzige Betriebsunterbrechung und ohne Eingriff in die Kernanwendung. Aus Cronjobs und lokalen Scripts wurden event-getriebene Lambda-Funktionen.
Aus permanent vorgehaltener Fixinfrastruktur wurde nutzungsbasierte Abrechnung. Die Produktiv-Datenbank ist von der Report-Last entkoppelt, der E-Mail-Versand aus dem kritischen Pfad genommen — das Tagesgeschäft läuft spürbar ruhiger.
Legacy-System, das an seine Grenzen kommt?
Wir evaluieren gemeinsam die größten Painpoints und einen Migrationsweg, der den Betrieb nicht anhält.
Kontakt aufnehmenOder direkt: office@mlh-ventures.com · +43 670 605 1854