Page 1 sur 1

[POSTGRESQL] Probleme de lenteur avec pg_connect (RESOLU)

Publié : mer. 30 sept. 2009, 15:04
par dums24
Bonjour tout le monde,

Je viens de développer une application en php permettant de connecter ensemble 3 bases de donnée differentes (MySQL, Oracle et PostgreSQL)

La base postgreSQL qui est distante se trouve chez notre hébergeur.
Mon soucis est le suivant lorsque j'active la fonction pg_connect

$this->dbh=pg_connect("host=".$server." port=5432 dbname=".$db." user=".$login." password=".$motdepasse);

Ma page qui met 36ms à s'afficher passe à 15secondes!!!
Sur cette page j'ai désactivé toutes les requetes sql sur Postgres ce qui me dit que le problème vient bien de ce connecteur

Avez vous déja rencontrer ce problème?
Si oui que dois je faire pour diminuer le temps d'affichage de ma page
Merci par avance pour vos réponses

Re: [POSTGRESQL] Probleme de lenteur avec pg_connect

Publié : mer. 30 sept. 2009, 15:46
par benjarobin
Tout d'abord une base de donnée distante ce n'est vraiment pas l'idéal, sinon tu es connecter au final ? Que donne le temps de la connexion si tu encadre la fonction de connexion par la fonction microtime.
Que donne un ping depuis php ? résolution dns lente ?
Voila une liste de piste...

PS: Je n'aime pas quand les développeurs utilise les double quotes alors qu'en plus ici ce n'est pas nécessaire :wink:

Re: [POSTGRESQL] Probleme de lenteur avec pg_connect

Publié : mer. 30 sept. 2009, 15:52
par tuxce
et une connexion par cli (psql -h ...), ça prend combien de temps ?

Re: [POSTGRESQL] Probleme de lenteur avec pg_connect [RESOLUS]

Publié : mer. 30 sept. 2009, 17:55
par dums24
le psql -h serveur.fr base -U user me donne :
Password: motDePasse

voila ce que j'obtiens et j'ai un délai de 30 secondes avant la demande du mot de passe puis 30 secondes de nouveau après avoir saisi mon motDePasse

Pour ce qui est du ping je ne peux le tester
j'ai utilisé la fonction de firebug de mozilla pour tester le temps de la connexion et il est de 15 s

Je viens à l'instant de retester (dns lent.... me donne une idée...)
le psql -h XXX.XXX.XXX.XXX base -U user me donne :
Password: motDePasse
utilisation de l'adresse IP au lieu du nom de domaine... et la temps de reponse en dessous de la seconde!!!
modification du connecteur .... tout fonctionne à merveille

Merci à vous tous

ps : j'ai remplacé mes doubles quotes par des simples quotes :wink:

Re: [POSTGRESQL] Probleme de lenteur avec pg_connect (RESOLU)

Publié : mer. 30 sept. 2009, 18:11
par benjarobin
Une résolution de DNS qui prend 15s :shock: J'avais soumis l'idée comme ça, sans être convaincu. Je serais curieux de savoir combien de temps prend un simple "host" sur ce cet hébergeur. Le problème vient du serveur DNS ou du pc/server faisant la requête ?

Re: [POSTGRESQL] Probleme de lenteur avec pg_connect (RESOLU)

Publié : jeu. 01 oct. 2009, 10:40
par dums24
je pense que cela provient de mon serveur qui réalise la requête... pas de mon prestataire.
Je viens de mettre à disposition cet outils dans un autre organisme et il fonctionne avec le nom de domaine et sa fonctionne très bien.