Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1365 connectés 

  FORUM HardWare.fr
  Programmation

  [PHP FREE ] Fatal error: Maximum execution time exceeded

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP FREE ] Fatal error: Maximum execution time exceeded

n°76791
omega2
Posté le 30-11-2001 à 01:12:19  profilanswer
 

Voilà, j'ai un problème avec mon script hbergé chez free.
J'ai eu droit ce soir au message "Fatal error: Maximum execution time exceeded in your script on line 1" depuis à peu près miniut trente ce matin.
 
Je me demandais si d'autre aurait eu le même problème que moi. Ca semble être du à une limitation mise en service assez récemment chez free.
 
Merci de bien vouloir me dire ce que je peux faire contre ce problème là. :(


---------------
VIVE L'AMOUR. :)
mood
Publicité
Posté le 30-11-2001 à 01:12:19  profilanswer
 

n°76794
Mara's dad
Yes I can !
Posté le 30-11-2001 à 01:23:33  profilanswer
 

Heu t'as quoi en line 1 : while( 1 ) {} ? ? ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°76797
omega2
Posté le 30-11-2001 à 01:31:24  profilanswer
 

Quel que soit le fichier, la lign 1, c'est ça :
 
<?


---------------
VIVE L'AMOUR. :)
n°76808
Mara's dad
Yes I can !
Posté le 30-11-2001 à 02:11:55  profilanswer
 

Ou bien çà :
 
<? while(1) {} ?>
 
Bon je rigole, j'ai pas de PB chez free pour le moment !
 
Et toi, çà marche toujours pas ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°76925
omega2
Posté le 30-11-2001 à 14:15:52  profilanswer
 

Mara's dad a écrit a écrit :

Ou bien çà :
 
<? while(1) {} ?>
 
Bon je rigole, j'ai pas de PB chez free pour le moment !
 
Et toi, çà marche toujours pas ?  



Une heure après, ca marchait toujours pas.
Le pire, c'est que le même programme avec des données différentes en entré marche très bien. :(
Actuellement, ca ne marche toujours pas. Netscape me dit que  qu'aucune donnée n'est retourné. :(
Va faloir que je change d'hébergeur du coup et ma base est trop grosse pour être récupéré grace à phpmyadmin..
Va faloir que je me cré un programme pour la duliquer morceaux par morceaux. :(


---------------
VIVE L'AMOUR. :)
n°76926
omega2
Posté le 30-11-2001 à 14:18:09  profilanswer
 

Rectificatif, au troisième essaie, il me ressort le même message. :(


---------------
VIVE L'AMOUR. :)
n°76928
krolours1
Posté le 30-11-2001 à 14:24:43  profilanswer
 

Le pb est que ton script prend trop de tps à s'éxécuter
 
essaie de mettre ça au début du script (si free autorise cette f°) : set_time_limit(0);

n°76929
omega2
Posté le 30-11-2001 à 14:31:13  profilanswer
 

krolours1 a écrit a écrit :

Le pb est que ton script prend trop de tps à s'éxécuter
 
essaie de mettre ça au début du script (si free autorise cette f°) : set_time_limit(0);  



Je vasi essayer. :)
merci pour l'astuce.


---------------
VIVE L'AMOUR. :)
n°76945
speedyop
Posté le 30-11-2001 à 15:21:31  profilanswer
 

par default le maximum time execution est de 30 secondes, si t'as page met plus de 30 seconde a s'executer c kil y a un pb.
s'il s'agit d'un parse ou autres chose du style, free ne convient pas, ca m'etonnerait kil te laissent augmenter le delai d'execution de tes scripts

n°77038
omega2
Posté le 30-11-2001 à 21:45:59  profilanswer
 

Bon, j'ai commencer mes essaies afin de trouver d'où proviendrais cette lenteur.
Pour le set_time_limit(0); , c'est inactif chez free.


---------------
VIVE L'AMOUR. :)
mood
Publicité
Posté le 30-11-2001 à 21:45:59  profilanswer
 

n°77102
speedyop
Posté le 01-12-2001 à 02:40:55  profilanswer
 

utilise ca pour debuguer:
place ca tout en haut de ta page:
 function getmicrotime()
  {  
  list($usec, $sec) = explode(" ",microtime());  
  return ((float)$usec + (float)$sec);  
  }  
 $time_start = getmicrotime();
 
et ca a divers endroit:
 $time_end = getmicrotime();
 $time = $time_end - $time_start;
 
 echo "page générée en ".round($time,3)." secondes";

n°77266
omega2
Posté le 01-12-2001 à 17:22:40  profilanswer
 

Merci speedyop, je vais essayer ta fonction.
ca me donera une idée de la durée de traitement dasn les cas qui marches.
 
Actuellement, mon code fait :

  • 3 include,
  • un des include lis un fichier de modèle de site,
  • je fais en plus une ouverture de session de bdd,
  • vers cette base là, je fait deux requêtes, une de mise à jour et une de lecture de 50 enregistrements,

je traite ces 50 enregistrement pour transformer les balises qu'il contiens en code html et en chemin vers des images.
 
 
 
Voilà ce que fait le code que j'utilise.
 
me reste plus qu'à mesurer la vitesse du code grace à ta fonction. :)

n°77277
omega2
Posté le 01-12-2001 à 18:24:59  profilanswer
 

Bon, vopilà les résulstats des tests que je vizens de faire:
 
includes + chargement du modèle : 0.3 à 3 secondes
accés à la bdd : 3 à 7 seconde
traitement des donées : mois de 5 seconde (avant la ccoupure du traitement)
 
Durée totale constaté au bout de plusisuers tests : mois de 16 secondes.
 
Bref, free coupe bien avant les 30 secondes. Si le traitement durée 30 seconde, j'aurais pas de problèmes car je traite déjà plus de 30 chaines retournée par la bdd sur les 50 et ce n'est aps la partie qui prends le plus de temps.

n°77379
omega2
Posté le 02-12-2001 à 01:02:10  profilanswer
 

Suite des tests: Ce soir, le script fonctionne bien dans la chambre de chat qui pose problème.
La page est généré en un peu plus de 20 secondes.
Par contre, une autre chambre de chat pose problème et l'arrêt pour temps d'éxécution ce passe mois de 2 seconde après le début du traitement.
Ils font vraiment chier avec ce progblème.
On peut vraiment pas savoir comment ils ont fait leur réglage vu que la duré maximùale auquel on a droit semble variable.

n°77381
speedyop
Posté le 02-12-2001 à 01:09:20  profilanswer
 

bah si function phpinfo(); ;)
regarde la je vient de te faire une page : http://speedyop.free.Fr/php.php3 apparement c fixer a 5sec!!!!!!

n°77383
Buitoni
Posté le 02-12-2001 à 01:34:13  profilanswer
 

Au fait, tu pourrais afficher le temps a plusieurs endroits et faire des flush(), ce qui permettrait de voir le resultat, meme si ton script se fait jeter, tu as jusqu'au flush :)

n°77386
omega2
Posté le 02-12-2001 à 02:21:22  profilanswer
 

Je fais plusieurs echo de durée.
Le max que j'ai eu dépâssé les 20 secondes alors que dans d'autres cas, je me fais jeté à un poil plus de 2 seconde.
Ils ont des problèmes de réglage on dirait. :(
 
En plus, 5 secondes, c'est beaucoup trop cours. Maintenant, je comprends pourquoi plein de site en php ont des problèmes en heure de pointe quand ils sont hébergé par free.

n°77387
speedyop
Posté le 02-12-2001 à 02:22:52  profilanswer
 

bah faut les comprendre quand meme que un sreveur doit heberger plein de site alors les ressources doivent etre partagé...

n°77388
omega2
Posté le 02-12-2001 à 02:27:38  profilanswer
 

speedyop a écrit a écrit :

bah faut les comprendre quand meme que un sreveur doit heberger plein de site alors les ressources doivent etre partagé...  



Mais je les comprends. :)
C'est jsute que 5 seconde, c'est un poil court pour beaucoup de cas. ;)

n°77822
omega2
Posté le 03-12-2001 à 23:51:31  profilanswer
 

Bon, on trouve une partie de mon code à l'adresse :
http://forum.hardware.fr/forum2.ph [...] owntopic=1
C'est un code de gestion de smilies et de formatage de texte. ;)
bonne lecture pour ceux qui veulent y jeter un oeuil. :)

n°77840
potiron
...
Posté le 04-12-2001 à 00:57:01  profilanswer
 

[citation][nom]
includes + chargement du modèle : 0.3 à 3 secondes
accés à la bdd : 3 à 7 seconde
traitement des donées : mois de 5 seconde (avant la ccoupure du traitement)
[/citation]
 
pas normal que l'acces mysql+recherche/select prenne autant de temps, j'ai fait un bench y a pas longtemps sur une base qui comptait 250000 entrées et une recherche avec une req exp mysql prennait - de 5sec pourtant c'est relativement lourd pour le serveur !
 
as tu bien indéxé les bonnes colonnes ?
tu utilises des tailles de champ optimal ?
et les bons types de données ?
 
pareil, vire les colonnes NULL et remplace les par des NOT NULL ->> NULL apporte rien et alourdit la base et ralentit les requetes ..etc tu as plein de petit truc simple a faire mais surtout si tu as des requetes croisés il faut bien avoir pensé ta base des le depart .
 
passe toutes tes requetes a la moulinette avec EXPLAIN, il apprend des choses surprenantes des fois :)

n°77919
omega2
Posté le 04-12-2001 à 10:46:18  profilanswer
 

potiron a écrit a écrit :

 
 
pas normal que l'acces mysql+recherche/select prenne autant de temps, j'ai fait un bench y a pas longtemps sur une base qui comptait 250000 entrées et une recherche avec une req exp mysql prennait - de 5sec pourtant c'est relativement lourd pour le serveur !
 
as tu bien indéxé les bonnes colonnes ?
tu utilises des tailles de champ optimal ?
et les bons types de données ?
 
pareil, vire les colonnes NULL et remplace les par des NOT NULL ->> NULL apporte rien et alourdit la base et ralentit les requetes ..etc tu as plein de petit truc simple a faire mais surtout si tu as des requetes croisés il faut bien avoir pensé ta base des le depart .
 
passe toutes tes requetes a la moulinette avec EXPLAIN, il apprend des choses surprenantes des fois :)  



Il faut pas oublier que c'est une base héberger chez free ce qui implique plusieurs centaines de requêtes en simultanées par serveur.
De plus, la requête qui va récupérer les 50 derniers messages d'une chambre de chat s'exécute sur une série de plus de 20 000 lignes. Je sais qu'il faudrait que je fasse un peu de vide mais ca fait presque deux mois que j'ai pas récupéré ma base et là, je peux plus a cause de la taille qu'est trop grande pour phpmyadmin.
Je suis entrein de me faire un script pour contourner le problème et ensuite, je ferais du ménage dans tout ça.
Pour les index, il faut que je vérifie que ca coresponde bien au champs de sélection mais ca devrai être bon.
Pour les champs NULL, je savais pas que ca pouvais jouer autant sur la rapidité. Je vérais ça.
Pour les taille de champs, j'ai deux champs surdimensionné (un bigint pour le numéro de réponse) et un champ texte pour le message en lui même. Sinon, les autres ont la taille minimale nécessaire.
Merci des infos.


---------------
VIVE L'AMOUR. :)
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [PHP FREE ] Fatal error: Maximum execution time exceeded

 

Sujets relatifs
[PHP] Affichage de retours chariots dans un champproblème sur le PHP et MYSQL HELP ME!!!!!!!
PHP champs[IMPORTANT] PHP - Fonction include ()
[PHP] Datetime et formatage[PHP][Flash] interaction
[PHP] RedirectionProbleme PHP modulo
[PHP] Comment faire des 'categories' de champs mysqlfonction PHP
Plus de sujets relatifs à : [PHP FREE ] Fatal error: Maximum execution time exceeded


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR