Faire un debounce avec React-Query

Je vais mettre en place un debounce avec React-Query en moins d'une minute pour éviter de DDoS mon backend.

placeholder
DIY19-04-2024

Salut à tous !

Dans ma dernière vidéo, je vous montre comment mettre en place un debounce dans une application React lorsque vous effectuez des appels API avec React Query. Cela peut sembler anodin, mais c'est une solution essentielle pour éviter de surcharger vos serveurs, surtout lorsque votre application commence à accueillir de nombreux utilisateurs.

Dans cette vidéo, je commence par expliquer ce qu’est un debounce : il s’agit d’une fenêtre de temps pendant laquelle une action ne peut pas se réexécuter. Cela permet de limiter les appels répétés, comme ceux déclenchés par des changements rapides de state, un problème courant dans les applications React utilisant React Query.

Je prends comme exemple un petit projet sur lequel je travaille, dédié à recenser des techniques de jeu de combat. En manipulant un filtre de recherche, on remarque que chaque modification du state déclenche une nouvelle requête réseau. Imaginez que mille utilisateurs effectuent cette opération simultanément : le serveur pourrait être submergé, voire risquer un DDoS par votre propre frontend !

Heureusement, il existe une solution simple : la librairie @uidotdev/usehooks. Dans la vidéo, je vous montre comment l’installer et l’utiliser. Avec le hook useDebounce, vous pouvez spécifier un délai en millisecondes avant que vos appels API ne soient réexécutés, réduisant ainsi la charge sur votre serveur.

Points abordés dans la vidéo :

  • Définition et utilité d’un debounce.
  • Démonstration des problèmes causés par des appels API répétés.
  • Installation et utilisation de la librairie
@uidotdev/usehooks
  • Optimisation des appels API avec React Query et le hook
useDebounce

En appliquant cette méthode, vous réduirez drastiquement le nombre de requêtes inutiles et assurerez une meilleure performance pour vos utilisateurs.

Retrouvez davantage de contenus sur le développement, le freelancing et le monde des développeurs sur mon site : dev-freelance.fr.

Merci pour votre soutien et à bientôt pour de nouveaux tutos !



Restez informé

Abonnez-vous à ma newsletter pour recevoir les derniers articles et mises à jour

Restez au courant

Pour devenir un meilleur développeur chaque jour.

Nous respectons votre vie privée. Désabonnement possible à tout moment.

Votre vie privée

Nous utilisons des cookies pour améliorer votre expérience sur notre site, analyser notre trafic et personnaliser les publicités. En cliquant sur "Accepter", vous consentez à l'utilisation de tous les cookies. Vous pouvez également choisir de refuser en cliquant sur le bouton "Refuser".