Laclass Dev
20/05/2026
Pourquoi ton API est super rapide pour certaines tâches... et bloque complètement sur d'autres ?
C'est un concept que beaucoup de développeurs peinent à comprendre : la différence entre "I/O Bound" et "CPU Bound". Pour comprendre, imagine que ton serveur est un employé de bureau très rapide, mais qui ne peut faire qu'une seule chose à la fois (c’est le cas de NodeJS ou Python par défaut). Tu as deux scénarios possibles avec lui :
1️⃣ Le scénario I/O Bound :
Ton serveur doit demander des données à la base de données. Pendant que la base de données cherche, ça prend quelques millisecondes et ton employé "attend".
Mais plutôt que de ne rien faire, il va traiter les requêtes de 10 autres utilisateurs en attendant.
👉🏾 Résultat : le serveur gère des milliers de connexions simultanées sans transpirer. C'est magique !
2️⃣ Le scénario CPU Bound :
Maintenant, un utilisateur demande à ton serveur de générer un rapport PDF de 100 pages, ou de redimensionner une image HD.
Là, l'employé ne peut pas "attendre", il doit "réfléchir et calculer" intensément. Pendant les 5 secondes où il génère le PDF... il ignore tous les autres utilisateurs, et toute ton application est ainsi figée. Je te laisse imaginer les conséquences sur tes utilisateurs.
Heureusement l’ingénierie logicielle a toujours une solution. Pour palier efficacement à ce soucis, il suffit d’appliquer une règle simple : On ne fait JAMAIS de calculs lourds (PDF, envoi de mails en masse, traitement d'images etc…) directement dans le cycle de l'API. On délègue ça à ce qu'on appelle un "Background Worker" a travers des files d'attente.
Quand une instruction lourde arrive, l'API dit juste à l’utilisateur : "C'est noté, je prépare ton PDF", cette réponse se fait en 20ms, et un autre programme s’occupe de la grosse tâche en coulisse.
Ce programme qu’on appelle "Background Worker" tourne indépendamment de l’API. Son seul rôle est d’écouter une file d’attente et d’exécuter les tâches lourdes une par une sans jamais bloquer les utilisateurs connectés à ton application.
C'est exactement ce genre d'architecture avancée que nous allons implémenter de A à Z lors de ma Backend Masterclass du 29 au 31 Mai. Si tu as déjà eu des problèmes de lenteur inexpliquée sur tes apps, viens m'en parler en commentaire ou en DM, je te donnerai des pistes d'optimisation !
Et le lien du workshop est dans les commentaires pour les curieux.
Ce ce n’oublie jamais, chaque bug compte !
Laclass Dev
Cliquez ici pour réclamer votre Listage Commercial.
Type
Site Web
Adresse
Maroua
Heures d'ouverture
| Lundi | 08:00 - 21:30 |
| Mardi | 08:00 - 21:30 |
| Mercredi | 08:00 - 21:30 |
| Jeudi | 08:00 - 21:30 |
| Vendredi | 08:00 - 21:30 |
| Samedi | 09:00 - 17:00 |
| Dimanche | 09:00 - 17:00 |