27 octobre 2026 · 3 min de lecture
La file d'attente (queue) : ne pas tout faire en même temps
Une file d'attente range les tâches lourdes pour les traiter une à une en arrière-plan, sans faire patienter l'utilisateur. Comment ça marche et pourquoi c'est fiable.
- fiabilité
- tech
Une file d'attente (en anglais, une « queue ») est une liste de tâches à faire, traitées dans l'ordre, en arrière-plan. Au lieu de forcer l'utilisateur à attendre qu'un travail lourd soit terminé, l'application note la tâche, répond tout de suite, et un autre programme la traite dès qu'il peut.
L'analogie : la cuisine d'un restaurant
Quand vous commandez, le serveur ne va pas cuisiner votre plat devant vous pendant que la salle attend. Il accroche un bon de commande au passe-plat. La cuisine les prend un à un. Même si vingt tables commandent en même temps, les bons s'alignent, et personne ne bloque le service.
Dans une application, le serveur de la salle, c'est ce qui répond à l'utilisateur. Les bons, ce sont les tâches. La cuisine, ce sont des programmes dédiés, appelés workers (« travailleurs »).
À quoi ça sert
On met dans une file tout ce qui est long ou non urgent pour l'écran :
- l'envoi d'e-mails ou de notifications ;
- le traitement d'une image ou d'une vidéo envoyée ;
- la génération d'un document ou d'un export ;
- un appel à un service externe qui peut être lent ;
- un gros calcul.
L'utilisateur voit « c'est en cours » en une fraction de seconde, au lieu de fixer un écran qui tourne. C'est une des causes de lenteur qu'on retrouve dans pourquoi une application est lente.
Ce que ça apporte
- Une réponse rapide : l'utilisateur n'attend pas la fin du travail.
- Un lissage des pics : si cent tâches arrivent d'un coup, elles s'alignent au lieu d'écraser le serveur.
- De la résistance aux pannes : si un service externe est indisponible, la tâche reste dans la file, on la réessaie plus tard.
Le revers : les réessais
Quand une tâche échoue, on la rejoue souvent automatiquement. Cela signifie qu'une même tâche peut être exécutée deux fois. Si c'est un e-mail ou un débit, le résultat doit rester le même : c'est le principe d'idempotence, que toute file bien conçue respecte.
Il faut aussi prévoir :
- ce qui se passe quand une tâche échoue encore et encore (on la met de côté et on prévient quelqu'un) ;
- que l'utilisateur sache où en est son travail ;
- que la file soit surveillée : une file qui grossit sans jamais se vider est un signal d'alarme.
Une file protège aussi les services qui limitent le nombre d'appels, comme on le voit avec le rate limiting.
À retenir
Une file d'attente permet de répondre vite et de faire le travail lourd plus tard, une tâche après l'autre. Elle demande en échange des tâches rejouables sans dégâts et une surveillance.
Et pour votre produit ?
Savoir si ce qui ralentit ou fragilise votre application devrait passer par une file se lit dans le code et dans ce qu'il fait au moment d'une requête. Un audit de votre application permet de le dire. Nous pouvons en parler lors d'un échange de 30 minutes.