2013-03-04 8 views
0

Im utilisant Symfony 1.4 avec Doctrine. Mon problème est: que cette demande de base de données:Symfony 1.4, Doctrine accélération

UserTable::getInstance()->find (1) 

reprend 1 seconde que j'ai trouvé très lent. Je pensais que la connexion persistante peut aider, mais je n'ai pas connu de changement. Une idée?

+2

Il peut s'agir de ** beaucoup de ressources ** différentes qui peuvent ralentir votre requête. Nous n'avons pas assez d'informations dans ce cas. Il n'y a pas de moyen simple d'optimiser MySQL qui correspond à tous les cas ... – j0k

+0

quoi d'autre puis-je poster pour vous informer? Je ne pense pas que cette simple requête puisse être simplifiée – user1929946

+0

Si vous vous inquiétez de la vitesse, pourquoi utilisez-vous un vieux symfony et une vieille doctrine? Et pourquoi utilisez-vous même la doctrine? C'est un peu connu pour être lent. – Steven

Répondre

1

En fait 1 seconde pour une sélection simple, semble assez long ... Quelques questions pour vérifier l'origine de problèmes:

  • avez-vous un index sur votre colonne id de votre table?
  • combien de lignes dans votre tableau? Pour être plus rapide, combien de temps pour faire la même requête directement sur votre base de données (essayez votre select * de xxx où id = 1 dans phpmyadmin ou autre gestionnaire db).

Si la demande est rapide dans ce cas, vous devez examiner les éléments suivants:

  • est votre base de données distante et que votre vitesse de réseau?
  • quelle est la taille des données retournées (champs UserTable)?
Questions connexes