J'utilise WampServer sur une application très simple qui consiste à : • lire des données numériques dans une page html à partir d'un formulaire, • récupérer les données dans une page php, les traiter puis tracer une courbe avec un script. J'ai constaté plusieurs comportements instables du serveur. 1/ En phase de mise au point, j'actualise la page sur Mozilla Firefox pour charger le fichier mis à jour. Souvent l'opération se passe bien mais parfois ça boucle avec le message "en attente de localhost". Je dois alors appuyer sur "escape" pour arrêter le chargement, puis commencer. 2/ Lorsque j'exécute l'application en validant le formulaire, la durée d'attente est souvent très supérieure à la durée d'exécution du script. Celle-ci est mesurée avec la fonction microtime, placée au début et à la fin du script. $timestart=microtime(true); $timeend=microtime(true); $time=$timeend-$timestart; La valeur de $time est toujours inférieure à 0,1 seconde, alors que l'application tourne parfois entre 1 et 2 minutes en affichant le message "en attente de localhost". Il arrive bien sûr que l'application ne tourne que 1 ou 2 secondes. Comment expliquer ce comportement instable du serveur et comment le corriger?
Si quelqu'un a une explication à ce problème, je le remercie de me dépanner.
Il nous serait plus aisé de vous aider en ayant les éléments classiques suivants : -Messages d'erreurs éventuels dans l'observateur des évènements -Messages d'erreurs éventuels dans les logs apache/php -Version d'apache -Version de php -Version de windows (précise)
Car les causes de lenteurs sont très nombreuses. Par exemple, avec apache 2.4, des lenteurs sont souvent constatées jusqu'à ce qu'on ajoute :
AcceptFilter http none
AcceptFilter https none
Dans httpd.conf
Et ce n'est qu'un exemple isolé parmi tant d'autres. Merci
Merci pour votre réponse Je vous communique les informations demandées.
-Messages d'erreurs éventuels dans l'observateur des évènements Avec Mozilla Firefox. Clic droit : examiner l'élément / Inspecteur : pas de messages d'erreur (est-ce le bon endroit pour rechercher les messages d'erreur?) -Messages d'erreurs éventuels dans les logs apache/php 1/ log apache : j'obtiens le message suivant quand j'ouvre le fichier "Le Fichier E:\wamp\logs\apache_error.log est trop grand pour le Bloc-notes. Utiliser un autre éditeur pour modifier le fichier. Le fichier fait 1 716 000 Ko. Idem avec Word et WordPad 2/ php_error.log : vide -Version d'apache : 2.4.2 -Version de php : 5.4.3 -Version de windows (précise) : Windows 7 Edition Familiale Premium
Merci pour l'info concernant l'observateur d'évènements de Windows que je n'avais jamais regardé. J'ai fais tourner l'application (2 fois avec attente et 5 fois sans attente) puis j'ai consulté les journaux Windows (application et Système) mais je n'ai vu que des messages de niveau information.
Concernant les messages d'erreurs éventuels dans le log apache, je ne peux pas l'ouvrir car il est trop grand. Est-il possible de le vider ou le supprimer pour qu'il en crée un nouveau.
J'ai supprimé le fichier puis lancé l'application. J'ai eu une attente, comme chaque fois que je lance l'application la première fois (*). Ci-dessous une copie du fichier apache_error.log.
[Tue Jun 25 11:22:30.809789 2013] [mpm_winnt:notice] [pid 2640:tid 420] AH00455: Apache/2.4.2 (Win64) PHP/5.4.3 configured -- resuming normal operations [Tue Jun 25 11:22:30.809789 2013] [mpm_winnt:notice] [pid 2640:tid 420] AH00456: Server built: May 13 2012 19:54:49 [Tue Jun 25 11:22:30.809789 2013] [core:notice] [pid 2640:tid 420] AH00094: Command line: 'E:\\wamp\\bin\\apache\\apache2.4.2\\bin\\httpd.exe -d E:/wamp/bin/apache/apache2.4.2' [Tue Jun 25 11:22:30.811789 2013] [mpm_winnt:notice] [pid 2640:tid 420] AH00418: Parent: Created child process 4144 [Tue Jun 25 11:22:31.148808 2013] [mpm_winnt:notice] [pid 4144:tid 296] AH00354: Child: Starting 64 worker threads.
(*) Si je relance application en validant à nouveau le formulaire, je n'ai généralement pas d'attente pendant 5 ou 6 relances, puis une attente apparaît à nouveau.
Avez-vous appliqué la modification indiquée lors de mon premier post ? De même, des logs en mode notice sur apache, ça génère pas mal de logs, et souvent inutile. Essayez de baisser juste d'un cran le niveau de logs.
Utilisez "127.0.0.1" comme nom d'hôte pour MySQL au lieu de "localhost". Dans la majorité des cas, vous passerez d'environ 1 sec pour la connexion à MySQL à 0.002 sec. C'est uniquement empirique, je n'ai aucune explication sur ce phénomène.
Désolé bagu, je n'avais pas compris qu'il fallait apporter les modifications. Je viens d'ajouter "AcceptFilter http none" et "AcceptFilter https none" dans httpd.conf et … miracle !!! j'ai l'impression que les attentes ont disparues. A confirmer après quelques jours de pratiques.
Il semble que le niveau de logs est actuellement "warn" # LogLevel: Control the number of messages logged to the error_log. # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn Est-ce que j'ai intérêt à le passer en "error"
Concernant le nom d'hôte pour MySQL, à quel endroit dois-je remplacer "localhost" par "127.0.0.1".
MySQL et nom d'hôte 127.0.0.1 à la place de localhost. Ce n'est pas directement lié à Wampserver, puisque ce paramètre ne figure dans aucun fichier de configuration. C'est à mettre dans les paramètres de connexion à MySQL de vos sites locaux, par exemple dans des fichiers config.php ou config_base.php pour une variable qui est souvent nommée $db_host. Ça se présente souvent comme ça :