Concevoir une stratégie de cache applicatif
Concevez une stratégie de cache Redis complète avec patterns appropriés, politique TTL, invalidation et protection contre les stampedes.
Coller dans votre IA
Collez ce prompt dans ChatGPT, Claude ou Gemini et personnalisez les variables entre crochets.
Tu es un architecte systèmes expert en stratégies de mise en cache et en optimisation des performances applicatives. Je dois mettre en place une stratégie de cache robuste pour mon application. **Contexte de l'application :** - Type : [EX: API REST à fort trafic, application web B2C, plateforme de données] - Stack : [EX: Node.js + PostgreSQL, Python + MongoDB] - Solution de cache envisagée : [EX: Redis 7, Memcached, cache en mémoire] - Trafic actuel : [EX: 1000 requêtes/minute, pics à 5000] - Problème de performance : [EX: requêtes DB trop lentes, API tierce rate-limited, calculs coûteux] **Données candidates au cache :** [LISTER_LES_TYPES_DE_DONNÉES: ex. profils utilisateurs, résultats de recherche, configurations, sessions, tokens JWT révoqués] Conçois une stratégie de cache complète : 1. **Analyse des données** : classe chaque type de donnée par fréquence d'accès, taux de modification et coût de recalcul pour prioriser ce qui mérite d'être caché. 2. **Patterns de cache** : recommande et implémente les patterns appropriés (Cache-Aside, Write-Through, Write-Behind, Read-Through) pour chaque cas d'usage. 3. **Politique d'expiration (TTL)** : définis des TTL appropriés pour chaque type de donnée avec justification. 4. **Stratégie d'invalidation** : comment invalider le cache lors des mises à jour des données (invalidation par clé, pattern, event-driven). 5. **Gestion des ratés de cache (Cache Miss)** : protection contre le Cache Stampede (thundering herd) et le Cache Penetration. 6. **Cache distribué** : considérations pour un environnement multi-instances (Redis Cluster, serialisation). 7. **Métriques** : métriques à surveiller (hit rate, miss rate, memory usage, évictions) et seuils d'alerte.
Pourquoi ce prompt fonctionne
<p>Ce prompt est structuré pour aborder le caching comme un problème d'ingénierie systèmes complet. L'analyse initiale par fréquence d'accès et coût de recalcul est l'étape la plus importante : cacher les mauvaises données (données qui changent constamment ou rarement accédées) est pire que de ne rien cacher car cela ajoute de la complexité sans bénéfice.</p><p>La protection contre le Cache Stampede (thundering herd) est souvent ignorée jusqu'au premier incident en production : quand un cache expire, toutes les requêtes simultanées frappent la base de données en même temps, causant exactement la surcharge qu'on essayait d'éviter. Ce prompt force à anticiper ce scénario.</p><p>La demande de métriques spécifiques avec seuils d'alerte transforme la conception en système observable : un hit rate en dessous de 80% indique généralement une mauvaise politique de TTL ou une invalidation trop agressive, des métriques qui permettent de tuner le cache continuellement en production.</p>
Cas d'usage
Résultat attendu
Une stratégie de cache complète avec analyse des données, patterns recommandés, politique TTL, stratégie d'invalidation et métriques de monitoring.
Formez-vous en profondeur
Découvrez le skill complet sur Prompt Guide pour maîtriser cette technique de A à Z.
Voir sur Prompt GuideTermes du glossaire
Prompts similaires
Apprendre les bases de Git pour débutants
Apprenez Git de zéro avec des explications imagées, des exemples concrets, un workflow pratique et un cheatsheet des commandes essentielles.
Définir une stratégie Git pour une équipe
Définissez une stratégie Git complète adaptée à votre équipe : branching model, conventions, code review et gestion des releases.
Configurer un pipeline CI/CD avec GitHub Actions
Configurez un pipeline CI/CD professionnel avec GitHub Actions couvrant tests, sécurité, build Docker et déploiement multi-environnements.
Créer un composant React accessible
Créez des composants React pleinement accessibles respectant WCAG 2.1 avec navigation clavier, ARIA et support des lecteurs d'écran.