Mathieu Desnouveaux

4 design patterns avancés pour améliorer la résilience d'une application

Présentation par Pascal Martin sur 4 design patterns avancés pour améliorer la résilience des applications au Forum PHP 2025

Sketchnote illustrant 4 design patterns pour la résilience présentée au Forum PHP 2025. Le schéma commence par 'tout échoue tout le temps' avec le principe de réduire le blast radius et ne laisser pas un processus attendre pour rien. La corrélation entre les requêtes est expliquée (tout le monde en même temps mène à différer les requêtes et différer les retry). Quatre stratégies sont présentées: étaler les crons et multiplier les queues avec introduction de l'aléatoire (ampoule), constant work (engrenage - préparer les réponses avant de recevoir les requêtes), attention à la variabilité avec pic d'activité aléatoire et préparer les réponses, découper en cellules indépendantes (ciseaux), et shuffle sharding (dé - répartir aléatoirement les ressources).

Cette sketchnote a été réalisée lors du Forum PHP 2025. Elle illustre la présentation "4 design patterns avancés pour améliorer la résilience d'une application" donnée par Pascal Martin, qui explore des stratégies avancées pour construire des systèmes plus robustes.

Contenu de la présentation

Pascal Martin part du principe "Tout échoue tout le temps" pour construire des systèmes robustes : réduire le blast radius et éviter l'attente inutile. L'ennemi principal est la corrélation des requêtes. Quatre patterns avancés : étaler les crons et multiplier les queues avec de l'aléatoire ; Constant Work qui précalcule en permanence au lieu de réagir ; découper en cellules indépendantes pour isoler les pannes ; Shuffle Sharding qui répartit aléatoirement les ressources. Combinés, ces patterns construisent des applications résistantes aux pannes et pics de charge.

Thèmes:
🏗️ Architecture 🚀 Performance
Événement:
🎤 Forum PHP

Source: Pascal Martin
Publié le 30 novembre 2025