Identifier les frontières
Cartographie des traitements pouvant être extraits sans réécriture globale de l'application ni rupture des contrats existants.
Découpage progressif d'un monolithe sur EC2 vers des services Python indépendants en Flask et FastAPI, exécutés sur Kubernetes.
Avec le temps, une API PHP hébergée sur EC2 avait accumulé des responsabilités très différentes : endpoints métier, orchestrations et traitements gourmands en CPU ou en mémoire.
Cette concentration créait un couplage fort entre le trafic utilisateur et les tâches de fond. Une charge ponctuelle ou un traitement long pouvait affecter le comportement de l'ensemble du système.
Cartographie des traitements pouvant être extraits sans réécriture globale de l'application ni rupture des contrats existants.
Développement de services Python en Flask ou FastAPI selon le besoin, avec responsabilités plus étroites et interfaces explicites.
Déploiement sur Kubernetes afin que les services lourds puissent être dimensionnés et opérés indépendamment de l'API historique.
Le produit a pu conserver son API historique tout en sortant progressivement les traitements qui pénalisaient sa stabilité et son évolution.
Les services Python sont devenus indépendamment déployables, testables et dimensionnables. L'équipe peut désormais faire évoluer les composants lourds sans imposer le même cycle de déploiement au cœur PHP.
La modernisation n'a pas consisté à remplacer le monolithe. Elle a consisté à retirer progressivement ce qui n'avait plus de raison d'y vivre.