OVH Cloud OVH Cloud

Problème avec Server.ScriptTimeout

6 réponses
Avatar
Teddy
Bonjour,

J'ai un problème d'arrêt d'exécution de pages ASP sous IIS5 à cause d'un paramètre Timeout inconnu.

En effet, j'ai bien précisé au début de la page ASP qui bloque, la durée souhaitée mais IIS n'en
tient pas compte avec :
Server.ScriptTimeout = 90

Mes pages fonctionnent bien mais elles sont longues à l''exécution car elles comprennent de nombreux
calculs successifs à partir de requêtes SQL.

J'ai fouillé la Base de Registre à la recherche d'un Timeout mais je n'ai rien trouvé pour IIS et
pourtant j'ai bien le message d'erreur du serveur "délai maximal dépassé ... Veuillez modifier
Server.ScriptTimeout ...".

Sauriez-vous comment faire ?
Merci beaucoup d'avance.

Teddy

6 réponses

Avatar
jbongran
" Teddy" a écrit dans le message de
news:%
Bonjour,

J'ai un problème d'arrêt d'exécution de pages ASP sous IIS5 à cause d'un


paramètre Timeout inconnu.

En effet, j'ai bien précisé au début de la page ASP qui bloque, la durée


souhaitée mais IIS n'en
tient pas compte avec :
Server.ScriptTimeout = 90

Mes pages fonctionnent bien mais elles sont longues à l''exécution car


elles comprennent de nombreux
calculs successifs à partir de requêtes SQL.

J'ai fouillé la Base de Registre à la recherche d'un Timeout mais je n'ai


rien trouvé pour IIS et
pourtant j'ai bien le message d'erreur du serveur "délai maximal dépassé


... Veuillez modifier
Server.ScriptTimeout ...".

Sauriez-vous comment faire ?
Merci beaucoup d'avance.

Teddy



Commence par faire un debug en mettant un bête response.write aux endroits
clé de ton code (avant une requête SQL, juste après la récuperation du
recordset, etc...)
Cela te permettra de voir si c'est bien le code ASP de "calcul" qui prend
beaucoup de temps.
Il est peut être possible, en utilisant la propriété response.Buffer à true
de spécifier plusieurs fois "au fil de l'eau" Server.ScriptTimeOut, à
essayer ...
Avatar
Teddy
Mon code arrrive à terme sur certaines machines, sur d'autres, le même code est interrompu !
Je suis convaincu qu'il y a un timeout imposé pour des raisons de performances IIS ou de mauvaise
config.
IIS ne tient pas compte des durées réglées dans la console d'Admin IIS aussi bien que du paramètre
Server.ScriptTimeout dans le script ASP lui même.
Je ne sais plus quoi faire.
Teddy


"jbongran" a écrit dans le message de news:
41666928$0$4502$
" Teddy" a écrit dans le message de
news:%
Bonjour,

J'ai un problème d'arrêt d'exécution de pages ASP sous IIS5 à cause d'un


paramètre Timeout inconnu.

En effet, j'ai bien précisé au début de la page ASP qui bloque, la durée


souhaitée mais IIS n'en
tient pas compte avec :
Server.ScriptTimeout = 90

Mes pages fonctionnent bien mais elles sont longues à l''exécution car


elles comprennent de nombreux
calculs successifs à partir de requêtes SQL.

J'ai fouillé la Base de Registre à la recherche d'un Timeout mais je n'ai


rien trouvé pour IIS et
pourtant j'ai bien le message d'erreur du serveur "délai maximal dépassé


... Veuillez modifier
Server.ScriptTimeout ...".

Sauriez-vous comment faire ?
Merci beaucoup d'avance.

Teddy



Commence par faire un debug en mettant un bête response.write aux endroits
clé de ton code (avant une requête SQL, juste après la récuperation du
recordset, etc...)
Cela te permettra de voir si c'est bien le code ASP de "calcul" qui prend
beaucoup de temps.
Il est peut être possible, en utilisant la propriété response.Buffer à true
de spécifier plusieurs fois "au fil de l'eau" Server.ScriptTimeOut, à
essayer ...




Avatar
jbongran
"Teddy" a écrit dans le message de
news:
Mon code arrrive à terme sur certaines machines, sur d'autres, le même


code est interrompu !
Je suis convaincu qu'il y a un timeout imposé pour des raisons de


performances IIS ou de mauvaise
config.
IIS ne tient pas compte des durées réglées dans la console d'Admin IIS


aussi bien que du paramètre
Server.ScriptTimeout dans le script ASP lui même.
Je ne sais plus quoi faire.
Teddy


"jbongran" a écrit dans le message de news:
41666928$0$4502$
>" Teddy" a écrit dans le message de
> news:%
>> Bonjour,
>>
>> J'ai un problème d'arrêt d'exécution de pages ASP sous IIS5 à cause


d'un
> paramètre Timeout inconnu.
>>
>> En effet, j'ai bien précisé au début de la page ASP qui bloque, la


durée
> souhaitée mais IIS n'en
>> tient pas compte avec :
>> Server.ScriptTimeout = 90
>>
>> Mes pages fonctionnent bien mais elles sont longues à l''exécution car
> elles comprennent de nombreux
>> calculs successifs à partir de requêtes SQL.
>>
>> J'ai fouillé la Base de Registre à la recherche d'un Timeout mais je


n'ai
> rien trouvé pour IIS et
>> pourtant j'ai bien le message d'erreur du serveur "délai maximal


dépassé
> ... Veuillez modifier
>> Server.ScriptTimeout ...".
>>
>> Sauriez-vous comment faire ?
>> Merci beaucoup d'avance.
>>
>> Teddy
>
> Commence par faire un debug en mettant un bête response.write aux


endroits
> clé de ton code (avant une requête SQL, juste après la récuperation du
> recordset, etc...)
> Cela te permettra de voir si c'est bien le code ASP de "calcul" qui


prend
> beaucoup de temps.
> Il est peut être possible, en utilisant la propriété response.Buffer à


true
> de spécifier plusieurs fois "au fil de l'eau" Server.ScriptTimeOut, à
> essayer ...



La directive Server.ScriptTimeout ne prend pas en compte le temps
d'exécution d'éventuels objets COM.
D'où ma préconisation de debug avec des response.write.
Egalement, suivant la manière dont tu recuperes tes recordsets, l'usage des
methodes getstring ou getrows peut dramatiquement (dans le bon sens)
améliorer le temps de traitement.
As tu essayer avec un server.scripttimeout à 300 (5 minutes) ?
As tu enlevé les éventuels On Error Resume Next, dans la mesure ou cela peut
masquer un souci genre boucle sans fin qui atteint le paramètre de timeout ?
Avatar
Teddy
Je n'avais pas pensé aux objets COM.
J'en utilise.
Toutefois, je suis convaincu que le paramètre Server.ScriptTimeout est ignoré tout comme celui dans
lIS ADMIN pour "Serveur Web par défaut" dont tous les autres sites héritent des propriétés.
Je peux en effet y mettre une valeur raisonnable (60 secondes) ou n'importe quoi (1000) sans que
cela change le comportement à l'affichage de la page ASP.
Il est systématiquement interrompu au bout d'une minute.



"jbongran" a écrit dans le message de news:
416a3fa1$0$300$
"Teddy" a écrit dans le message de
news:
Mon code arrrive à terme sur certaines machines, sur d'autres, le même


code est interrompu !
Je suis convaincu qu'il y a un timeout imposé pour des raisons de


performances IIS ou de mauvaise
config.
IIS ne tient pas compte des durées réglées dans la console d'Admin IIS


aussi bien que du paramètre
Server.ScriptTimeout dans le script ASP lui même.
Je ne sais plus quoi faire.
Teddy


"jbongran" a écrit dans le message de news:
41666928$0$4502$
>" Teddy" a écrit dans le message de
> news:%
>> Bonjour,
>>
>> J'ai un problème d'arrêt d'exécution de pages ASP sous IIS5 à cause


d'un
> paramètre Timeout inconnu.
>>
>> En effet, j'ai bien précisé au début de la page ASP qui bloque, la


durée
> souhaitée mais IIS n'en
>> tient pas compte avec :
>> Server.ScriptTimeout = 90
>>
>> Mes pages fonctionnent bien mais elles sont longues à l''exécution car
> elles comprennent de nombreux
>> calculs successifs à partir de requêtes SQL.
>>
>> J'ai fouillé la Base de Registre à la recherche d'un Timeout mais je


n'ai
> rien trouvé pour IIS et
>> pourtant j'ai bien le message d'erreur du serveur "délai maximal


dépassé
> ... Veuillez modifier
>> Server.ScriptTimeout ...".
>>
>> Sauriez-vous comment faire ?
>> Merci beaucoup d'avance.
>>
>> Teddy
>
> Commence par faire un debug en mettant un bête response.write aux


endroits
> clé de ton code (avant une requête SQL, juste après la récuperation du
> recordset, etc...)
> Cela te permettra de voir si c'est bien le code ASP de "calcul" qui


prend
> beaucoup de temps.
> Il est peut être possible, en utilisant la propriété response.Buffer à


true
> de spécifier plusieurs fois "au fil de l'eau" Server.ScriptTimeOut, à
> essayer ...



La directive Server.ScriptTimeout ne prend pas en compte le temps
d'exécution d'éventuels objets COM.
D'où ma préconisation de debug avec des response.write.
Egalement, suivant la manière dont tu recuperes tes recordsets, l'usage des
methodes getstring ou getrows peut dramatiquement (dans le bon sens)
améliorer le temps de traitement.
As tu essayer avec un server.scripttimeout à 300 (5 minutes) ?
As tu enlevé les éventuels On Error Resume Next, dans la mesure ou cela peut
masquer un souci genre boucle sans fin qui atteint le paramètre de timeout ?




Avatar
jbongran
" Teddy" a écrit dans le message de
news:
Je n'avais pas pensé aux objets COM.
J'en utilise.
Toutefois, je suis convaincu que le paramètre Server.ScriptTimeout est


ignoré tout comme celui dans
lIS ADMIN pour "Serveur Web par défaut" dont tous les autres sites


héritent des propriétés.
Je peux en effet y mettre une valeur raisonnable (60 secondes) ou


n'importe quoi (1000) sans que
cela change le comportement à l'affichage de la page ASP.
Il est systématiquement interrompu au bout d'une minute.



"jbongran" a écrit dans le message de news:
416a3fa1$0$300$
> "Teddy" a écrit dans le message de
> news:
>> Mon code arrrive à terme sur certaines machines, sur d'autres, le même
> code est interrompu !
>> Je suis convaincu qu'il y a un timeout imposé pour des raisons de
> performances IIS ou de mauvaise
>> config.
>> IIS ne tient pas compte des durées réglées dans la console d'Admin IIS
> aussi bien que du paramètre
>> Server.ScriptTimeout dans le script ASP lui même.
>> Je ne sais plus quoi faire.
>> Teddy
>>
>>
>> "jbongran" a écrit dans le message de news:
>> 41666928$0$4502$
>> >" Teddy" a écrit dans le message de
>> > news:%
>> >> Bonjour,
>> >>
>> >> J'ai un problème d'arrêt d'exécution de pages ASP sous IIS5 à cause
> d'un
>> > paramètre Timeout inconnu.
>> >>
>> >> En effet, j'ai bien précisé au début de la page ASP qui bloque, la
> durée
>> > souhaitée mais IIS n'en
>> >> tient pas compte avec :
>> >> Server.ScriptTimeout = 90
>> >>
>> >> Mes pages fonctionnent bien mais elles sont longues à l''exécution


car
>> > elles comprennent de nombreux
>> >> calculs successifs à partir de requêtes SQL.
>> >>
>> >> J'ai fouillé la Base de Registre à la recherche d'un Timeout mais je
> n'ai
>> > rien trouvé pour IIS et
>> >> pourtant j'ai bien le message d'erreur du serveur "délai maximal
> dépassé
>> > ... Veuillez modifier
>> >> Server.ScriptTimeout ...".
>> >>
>> >> Sauriez-vous comment faire ?
>> >> Merci beaucoup d'avance.
>> >>
>> >> Teddy
>> >
>> > Commence par faire un debug en mettant un bête response.write aux
> endroits
>> > clé de ton code (avant une requête SQL, juste après la récuperation


du
>> > recordset, etc...)
>> > Cela te permettra de voir si c'est bien le code ASP de "calcul" qui
> prend
>> > beaucoup de temps.
>> > Il est peut être possible, en utilisant la propriété response.Buffer


à
> true
>> > de spécifier plusieurs fois "au fil de l'eau" Server.ScriptTimeOut, à
>> > essayer ...
>
> La directive Server.ScriptTimeout ne prend pas en compte le temps
> d'exécution d'éventuels objets COM.
> D'où ma préconisation de debug avec des response.write.
> Egalement, suivant la manière dont tu recuperes tes recordsets, l'usage


des
> methodes getstring ou getrows peut dramatiquement (dans le bon sens)
> améliorer le temps de traitement.
> As tu essayer avec un server.scripttimeout à 300 (5 minutes) ?
> As tu enlevé les éventuels On Error Resume Next, dans la mesure ou cela


peut
> masquer un souci genre boucle sans fin qui atteint le paramètre de


timeout ?

As tu essayé le "debug" proposé ?
Avatar
Teddy
J'ai réécrit tout mon code pour qu'il tourne plus vite.
Je n'ai plus de problème de Timeout.

Mais je reste dubitatif quant à l'efficacité - voir l'utilité ! - du paramètre Server.ScriptTimeout
dans une page ASP.
Merci quand même pour tes conseils.

Ted

"jbongran" a écrit dans le message de news:
416fa9e3$0$29525$

" Teddy" a écrit dans le message de
news:
Je n'avais pas pensé aux objets COM.
J'en utilise.
Toutefois, je suis convaincu que le paramètre Server.ScriptTimeout est


ignoré tout comme celui dans
lIS ADMIN pour "Serveur Web par défaut" dont tous les autres sites


héritent des propriétés.
Je peux en effet y mettre une valeur raisonnable (60 secondes) ou


n'importe quoi (1000) sans que
cela change le comportement à l'affichage de la page ASP.
Il est systématiquement interrompu au bout d'une minute.



"jbongran" a écrit dans le message de news:
416a3fa1$0$300$
> "Teddy" a écrit dans le message de
> news:
>> Mon code arrrive à terme sur certaines machines, sur d'autres, le même
> code est interrompu !
>> Je suis convaincu qu'il y a un timeout imposé pour des raisons de
> performances IIS ou de mauvaise
>> config.
>> IIS ne tient pas compte des durées réglées dans la console d'Admin IIS
> aussi bien que du paramètre
>> Server.ScriptTimeout dans le script ASP lui même.
>> Je ne sais plus quoi faire.
>> Teddy
>>
>>
>> "jbongran" a écrit dans le message de news:
>> 41666928$0$4502$
>> >" Teddy" a écrit dans le message de
>> > news:%
>> >> Bonjour,
>> >>
>> >> J'ai un problème d'arrêt d'exécution de pages ASP sous IIS5 à cause
> d'un
>> > paramètre Timeout inconnu.
>> >>
>> >> En effet, j'ai bien précisé au début de la page ASP qui bloque, la
> durée
>> > souhaitée mais IIS n'en
>> >> tient pas compte avec :
>> >> Server.ScriptTimeout = 90
>> >>
>> >> Mes pages fonctionnent bien mais elles sont longues à l''exécution


car
>> > elles comprennent de nombreux
>> >> calculs successifs à partir de requêtes SQL.
>> >>
>> >> J'ai fouillé la Base de Registre à la recherche d'un Timeout mais je
> n'ai
>> > rien trouvé pour IIS et
>> >> pourtant j'ai bien le message d'erreur du serveur "délai maximal
> dépassé
>> > ... Veuillez modifier
>> >> Server.ScriptTimeout ...".
>> >>
>> >> Sauriez-vous comment faire ?
>> >> Merci beaucoup d'avance.
>> >>
>> >> Teddy
>> >
>> > Commence par faire un debug en mettant un bête response.write aux
> endroits
>> > clé de ton code (avant une requête SQL, juste après la récuperation


du
>> > recordset, etc...)
>> > Cela te permettra de voir si c'est bien le code ASP de "calcul" qui
> prend
>> > beaucoup de temps.
>> > Il est peut être possible, en utilisant la propriété response.Buffer


à
> true
>> > de spécifier plusieurs fois "au fil de l'eau" Server.ScriptTimeOut, à
>> > essayer ...
>
> La directive Server.ScriptTimeout ne prend pas en compte le temps
> d'exécution d'éventuels objets COM.
> D'où ma préconisation de debug avec des response.write.
> Egalement, suivant la manière dont tu recuperes tes recordsets, l'usage


des
> methodes getstring ou getrows peut dramatiquement (dans le bon sens)
> améliorer le temps de traitement.
> As tu essayer avec un server.scripttimeout à 300 (5 minutes) ?
> As tu enlevé les éventuels On Error Resume Next, dans la mesure ou cela


peut
> masquer un souci genre boucle sans fin qui atteint le paramètre de


timeout ?

As tu essayé le "debug" proposé ?