IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Temps d'exécution d'un script [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 99
    Par défaut Temps d'exécution d'un script
    Bonjour,

    J'ai un script qui doit tourner plus de 30s (max du fichier php.ini).
    Je suis sur un dédie.

    J'ai mis ces 2 lignes au debut du fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    set_time_limit(0);
    ignore_user_abort(1);
    Le serveur n'est pas en safe mode.

    Cependant apres un certain temps (plus de 30s) j'obtiens une page d'erreur d'IE me mettant
    The page cannot be displayed

    ...et le script s'arrete.

    Je ne sais pas d'où peut venir ce plantage, et comment y remedier.

    Merci pour votre aide

  2. #2
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Si tu est sur un dédié tu n'as qu'à éditer le php.ini pour mettre le safe_mode à off.

    Et après sa devrait aller tout seul.

    non ?

  3. #3
    Membre chevronné
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Par défaut
    Salut,

    quel genre de script est-ce, quel genre d'opérations effectue-t-il ?

  4. #4
    Membre chevronné
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Par défaut
    Citation Envoyé par Gwipi
    Le serveur n'est pas en safe mode.
    Citation Envoyé par ePoX
    Si tu est sur un dédié tu n'as qu'à éditer le php.ini pour mettre le safe_mode à off.

  5. #5
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 99
    Par défaut
    Le safe mode est déjà à OFF

    Le script fait un boucle, et dans la boucle il fait 2 requetes MySQL et un sleep(5).

  6. #6
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    oops lol... J'ai lu de travers :o

    Dis en un peu plus sur ton code.

  7. #7
    Membre chevronné
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Par défaut
    Citation Envoyé par Gwipi
    Le script fait un boucle, et dans la boucle il fait 2 requetes MySQL et un sleep(5).
    Les accès DB ne sont pas comptés dans les temps totaux d'exec d'un script... Tu n'aurais pas une petite boucle infinie par hasard?
    Ca serait bien si on pouvait voir un bout du code en question

  8. #8
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 99
    Par défaut
    C'est pas une boucle infini puisque j'ai une trace d'arret dans ma base, je vois bien ou le script s'arrete le traitement. Donc ca ne vient d'un probleme de ce genre.

  9. #9
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 99
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    do {
         sleep(5);
         mysql_query("UPDATE ...");
         list($var) = mysql_fetch_row(mysql_query("SELECT var ...));
         if ( rarement execute ) {
              mysql_query("UPDATE ...");
         }
    } while ( strlen($var) > 0 );

  10. #10
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Que cherches tu à faire exactement ?
    Parce que sa sent la boucle infinie sa.

  11. #11
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 99
    Par défaut
    Bonjour,

    Je te confirme à 100% que c'est pas une boucle infinie.
    En ajoutant quelques 'echo' dans le code, j'ai remarqué que le script au bout d'un certain moment sort de cette boucle et repart depuis le debut comme si PHP relancait le script au bout d'un certain temps.

  12. #12
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 99
    Par défaut
    Encore un petit truc,

    En lançant le cron avec Webmin -> Aucun problème

    En lançant à partir de IE et en mettant un echo time() dans la boucle aucun problème non plus.

  13. #13
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Salut

    Donc finalement, il y a un problème ou pas ? Il me semble que tu viens de contredire ton premier message :/
    Puis-je demander l'intérêt de sleep() ?

  14. #14
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 99
    Par défaut
    Citation Envoyé par Yogui
    Salut

    Donc finalement, il y a un problème ou pas ? Il me semble que tu viens de contredire ton premier message :/
    Puis-je demander l'intérêt de sleep() ?
    Ben maintenant

  15. #15
    Membre confirmé
    Inscrit en
    Juillet 2002
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 99
    Par défaut
    Citation Envoyé par Yogui
    Salut

    Donc finalement, il y a un problème ou pas ? Il me semble que tu viens de contredire ton premier message :/
    Puis-je demander l'intérêt de sleep() ?
    Ben maintenant y'a plus de problème, je trouve juste bizarre qu'il faille un echo pour eviter de faire planter le script en mode navigateur.

    Comme il s'agit d'une simulation, le sleep est le temps réel entre 2 actions de la simulation.

    Merci pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Le temps d'exécution de vos scripts perl!!
    Par djibril dans le forum Langage
    Réponses: 5
    Dernier message: 17/06/2009, 10h42
  2. Réponses: 3
    Dernier message: 24/06/2007, 01h24
  3. [MySQL] Temps d'exécution d'un script PHP/MySQL
    Par BornBanane dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 21/06/2007, 15h57
  4. Calculer le temps d'exécution d'un script
    Par pomgnon dans le forum C
    Réponses: 2
    Dernier message: 28/12/2006, 15h49
  5. [CSV] Temps d'exécution d'un script
    Par Sangdrax1604 dans le forum Langage
    Réponses: 2
    Dernier message: 10/04/2006, 18h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo