Optimisation

Optimisation d’apps Laravel : requêtes, cache, files d’attente et temps de réponse — pour tenir la charge en production.

Le service

Je traque ce qui ralentit vraiment votre application, pas ce qu’on suppose.

Profiling, indexes, eager loading, Redis, queues : je mesure l’application telle qu’elle tourne en conditions réelles, puis je corrige ce qui pèse sur le temps de réponse. Pas de réécriture par précaution. Objectif : stabilité et marge de croissance sur ce qui compte pour vos utilisateurs.

Une requête N+1 invisible en développement, avec dix lignes de test, devient un mur en production avec dix mille. Des jobs de queue qui s’accumulent sans que personne ne le remarque, un cache jamais mis en place faute de temps. Le code fonctionne. C’est sous charge réelle qu’il montre ses limites, et c’est rarement là où on l’imaginait.

Approche

Un profiling d’abord : requêtes lentes, temps de réponse réel, état des queues. Les correctifs suivent l’ordre d’impact, pas l’ordre de confort.

Les trois leviers

Requêtes & indexes

Eager loading, requêtes N+1, indexes manquants sur les colonnes filtrées. La base de données arrête de faire deviner l’application.

Cache & Redis

Ce qui mérite d’être caché, avec des durées de vie réalistes, pas un cache posé partout sans stratégie.

Files d’attente

Queues, workers dimensionnés, stratégies de retry. Les tâches lourdes sortent du cycle de requête.

Questions

Ce qu’on clarifie avant l’audit.

Profiling en conditions proches de la production : requêtes, temps de réponse, état des queues. Pas une lecture rapide du code pour deviner.

Suite

Votre application ralentit sous la charge ?

On profile d’abord, on corrige ensuite, pas l’inverse.