Aller au contenu principal
🔒 Mode aperçu. Les quinze premières leçons Foundations sont gratuites ; celle-ci est Pro. Démarrez un trial de 7 jours pour débloquer l'éditeur, les conseils AI et le reste du programme. Carte requise, annulez à tout moment dans Dashboard.Démarrer le trial de 7 jours →
← CoursSystem Design for Python JuniorsModule 6 · Cas de conception de systèmes réelsConcevoir un raccourcisseur d'URL : les mathématiques de capacité avant toutwrite81 / 105
+120 XP
Tâche
📝 **Tâche :** Créez un petit \`dead_letter_handler(msg, retry_count, max_retries)\` qui renvoie l'un des \`"retry"\`, \`"deadletter"\` ou \`"drop"\` : 1. \`msg.get("malformed", False) est True\` → \`"drop"\` (ne réessayez jamais une entrée corrompue - elle échouera pour toujours). 2. \`retry_count < max_retries\` → \`"retry"\` (toujours en dessous du budget). 3. \`retry_count == max_retries\` → \`"deadletter"\` (utilisé le budget — route vers DLQ pour examen des opérations). 4. \`retry_count > max_retries\` → \`"drop"\` (déjà DLQ ; les échecs suivants tombent silencieusement pour arrêter le bruit). Ce modèle protège chaque file d’attente de production des tempêtes de messages empoisonnés. 📋 Implémentez la fonction ci-dessus. Les tests s'exécutent automatiquement. 💡 **Indice :** Relisez la théorie si vous êtes bloqué.
✏️ Écris ton code ici
🐍
Chargement de Python...
Téléchargement unique (~1 Mo). Ensuite, c’est instantané.
📊 Résultat
Cliquez sur Exécuter pour voir le résultat...

💬 Discussion

Soyez le premier à poser une question ou partager une astuce.
Connectez-vous pour rejoindre la discussion. La lecture est gratuite.
Chargement de la discussion…