2009-10-29 3 views
0

Ce code prend presque une demi-seconde à s'exécuter. Est-ce que quelqu'un pourrait m'aider avec quelques raisons pour lesquelles cela pourrait se produire et des solutions possibles?Constructeur PDO très lent (mysql)

Si ce compte, la DB est hébergé par amazon rds

 $this->_connection = new PDO(
      $dsn, 
      $this->_config['username'], 
      $this->_config['password'], 
      $this->_config['driver_options'] 
     ); 

Répondre

1

constructeur de PDO ouvre une connexion de base de données. Lorsque la base de données est sur un serveur distant, une pause d'une demi-seconde (500 ms) n'est pas trop surprenante, compte tenu des temps de ping et du fait que vous n'ouvrez pas simplement une connexion, mais que vous vous connectez également.

+1

Merci pour la réponse. Est-ce que cela semble supprimer l'avantage d'utiliser Amazon RDS en général? – Brian

+1

c'est une bonne raison d'utiliser des connexions persistantes. Sur les réseaux locaux, les connexions persistantes ne valent pas la peine. sur les réseaux lents, c'est là qu'ils sont utiles. Assurez-vous simplement que vous ajoutez à votre code/classe de connexion pour vérifier si des transactions sont ouvertes sur la connexion en cours et les annuler. – longneck