PB connexion sql server 2000

PB connexion sql server 2000 - SQL/NoSQL - Programmation

Marsh Posté le 11-09-2006 à 17:49:41    

Bonjour à tous,
 
J'ai une application web qui se connecte à un sql server 2000 sp3, l'appli est en php 5, le serveur web est du IIS et l'OS est du Win 2000.
 
Mon soucis est que je n'arrive pas a me connecter par intermittence et il suffit d'actualiser la page pour que la connection refonctionne.
 
J'ai essayer d'attaquer la base SQL depuis un autre PC (win 2003, IIS, PHP 5) avec les mêmes fichiers (même appli. web) et là ça fonctionne nikel.
 
Je me suis dit OK, c'est le IIS du win 2000 qui perturbe alors je suis passé sur Apache et là toujours les mêmes soucis (impossible de se connecter à la base de temps en temps).
 
Ce que j'en conclue :  
- le problème ne vient pas du sql serveur puisque je l'attaque bien à distance sans aucun soucis (pas de rattage)
 
Please, si vous avez des renseignements ou si ce problème vous est déjà arrivez, je susi preneur d'infos.
 
J'espère que je suis clair ....

Reply

Marsh Posté le 11-09-2006 à 17:49:41   

Reply

Marsh Posté le 13-09-2006 à 10:13:03    

quelle idée aussi de travailler sur une plateforme 100% microsoft, et utiliser PHP (sur IIS qui plus est) alors qu'ASP (et pourquoi pas C# dans ton cas) rempli très bien son rôle sans dépenser un centime...
 
php et autres technos libres, tu le met en place sur des machines libres, avoir un truc 100% proprio et s'emmerder avec php qui tourne dans un mode "bidouille", t'as bien cherché ce qui t'arrive :o
 
plus sérieusement.
=> je suppose que PHP5 utilise une lib sql dédiée à sql server. regarde s'il n'y a pas une maj, ton problème est souvent issu de petits bugs à la con qui changent à chaque build
=> s'il repose sur OLEDB ou ODBC, alors met à jour MDAC avec la dernière version (2.8 il me semble)
=> essaie de changer de mode de connection (lib native à lien OLEDB par exemple, ça change pas grand chose aux perfs de toute façon)
=> ton IIS n'a rien à foutre sur le serveur de la base de données de toute façon, donc si ça marche en mettant le serveur web sur un second serveur, t'as une bonne excuse pour imposer une architecture sécurisée, fiable et performante
=> peut-être un problème de gestion du pool des connections, ou de mise en veille des hd du disque par exemple. genre y'a un bug dans ton code ou dans la lib PHP qui fait que ton pool de connexions se rempli et arrive à saturation. la cnx suivante plante, le pool se reset, et ça donne une panne intermitante. ou alors c'est les disques de la bdd qui se mettent en veille, et quand tu fais une requête après une longue inactivité, le temps que le serveur se réveille, et la base tombe en timeout. à nouveau erreur intermintante difficilement reproduisible

Message cité 1 fois
Message édité par MagicBuzz le 13-09-2006 à 10:14:04
Reply

Marsh Posté le 13-09-2006 à 12:05:18    

MagicBuzz a écrit :

quelle idée aussi de travailler sur une plateforme 100% microsoft, et utiliser PHP (sur IIS qui plus est) alors qu'ASP (et pourquoi pas C# dans ton cas) rempli très bien son rôle sans dépenser un centime...
 
php et autres technos libres, tu le met en place sur des machines libres, avoir un truc 100% proprio et s'emmerder avec php qui tourne dans un mode "bidouille", t'as bien cherché ce qui t'arrive :o
 
plus sérieusement.
=> je suppose que PHP5 utilise une lib sql dédiée à sql server. regarde s'il n'y a pas une maj, ton problème est souvent issu de petits bugs à la con qui changent à chaque build
=> s'il repose sur OLEDB ou ODBC, alors met à jour MDAC avec la dernière version (2.8 il me semble)
=> essaie de changer de mode de connection (lib native à lien OLEDB par exemple, ça change pas grand chose aux perfs de toute façon)
=> ton IIS n'a rien à foutre sur le serveur de la base de données de toute façon, donc si ça marche en mettant le serveur web sur un second serveur, t'as une bonne excuse pour imposer une architecture sécurisée, fiable et performante
=> peut-être un problème de gestion du pool des connections, ou de mise en veille des hd du disque par exemple. genre y'a un bug dans ton code ou dans la lib PHP qui fait que ton pool de connexions se rempli et arrive à saturation. la cnx suivante plante, le pool se reset, et ça donne une panne intermitante. ou alors c'est les disques de la bdd qui se mettent en veille, et quand tu fais une requête après une longue inactivité, le temps que le serveur se réveille, et la base tombe en timeout. à nouveau erreur intermintante difficilement reproduisible


 
Bonjour et merci pour ta réponse,
 
J'ai opter pour la soluce héberger la base de données sur un serveur tier et sa fonctionne très bien.
 
Sinon pour le fait d'utiliser IIS et Win 2000, il n'en tiendrai qu'a moi tout ce serait sur une architecture LAMP.
 
Merci @+

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed