Bonjour,

je développe un site sous Symfony2 et grâce à sa barre de profiler intégrée, je peux voir que j'ai jusqu'à 14 requêtes sur certaines pages.
Je lis un peu partout qu'au dessus de 5 requêtes c'est quasi-inacceptable et ça me fait un peu peur.
J'ai déjà utilisé des jointures pour éviter des requêtes supplémentaires, mais par exemple, rien que sur la page d'accueil j'ai:

  1. une requête pour récupérer le texte d'accueil
  2. une requête pour récupérer le nombre de notification de l'utilisateur connecté
  3. une requête pour récupérer les 4 derniers utilisateurs inscrits
  4. je limite cette requête avec le Paginator ( = 1 requête supplémentaire)
  5. une requête pour récupérer les 4 derniers posts
  6. je limite cette requête avec le Paginator ( = 1 requête supplémentaire)
  7. une requête pour récupérer les 10 tags les plus utilisés
  8. je limite cette requête avec le Paginator ( = 1 requête supplémentaire)
  9. une requête automatiquement faite par Symfony2 pour récupérer l'utilisateur connecté en DB



Donc, un total de 9 requêtes SQL, rien que sur la page d'accueil
Ces données n'ont rien à voir les une avec les autres donc je ne vois pas comment je pourrai les récupérer en moins de requêtes...
Mes questions sont donc les suivantes:

  • Est-ce qu'il est vraiment mal d'avoir jusqu'à 14 requêtes par pages? Le profiler indique que doctrine prend 43ms pour exécuter ces requêtes, en mode Dev évidemment.
  • Comment pourrais-je récupérer des données à priori pas liées entre elles en effectuant moins de requêtes?
  • Quelles sont les vraies conséquences d'un trop plein de requêtes SQL? Les pages seront inaccessibles?
  • Dans le profiler, le logo de Doctrine devient jaune (warning) à partir de 50 requêtes... C'est un indicateur valable ou c'est une valeur au pif?



Merci d'avance pour vos réponses