Salut,
j'ai un pb de timeout je pense sur une requete de MAJ d'une de mes
bases de donnée.
En effet je lance celle ci depuis un script php et elle MAJ une de mes
table or celle-ci est tres volumineuse,
Ma question est donc :
quelle est le processus qui me sort ? ( mon SGBD ou apache / et
comment le savoir)
quelle peuvent etre les solutions a y aporter
Merci d'avance pour votre aide
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Frederic Rouchouze
j'ai un pb de timeout je pense sur une requete de MAJ d'une de mes bases de donnée. En effet je lance celle ci depuis un script php et elle MAJ une de mes table or celle-ci est tres volumineuse, Ma question est donc : quelle est le processus qui me sort ? ( mon SGBD ou apache / et comment le savoir) quelle peuvent etre les solutions a y aporter
Si le temps d'exécution provient majoritairement de l'exécution du script PHP, si tu connais le timeout de ton serveur PHP et que tu ne peux pas le modifier, voici ce que je te conseille : - indentifier dans ton script la boucle qui "prend du temps", - faire un test sur le temps écoulé à l'intérieur de la boucle, - lorsque le temps écoulé s'approche "dangereusement" du timout, mémoriser le nombre de passages dans la boucle et sortir de la boucle, - rediriger (via un lien cliquable ou une redirection HTTP) vers la même page en envoyant comme paramètre le nombre de passages déjà effectués, - lorsque le script est relancé, redémarrer la boucle là où elle s'était arrêtée grâce au paramètre "nombre de passages".
Ai-je été clair ? -- Frédéric Rouchouze mailto:
j'ai un pb de timeout je pense sur une requete de MAJ d'une de mes
bases de donnée.
En effet je lance celle ci depuis un script php et elle MAJ une de mes
table or celle-ci est tres volumineuse,
Ma question est donc :
quelle est le processus qui me sort ? ( mon SGBD ou apache / et
comment le savoir)
quelle peuvent etre les solutions a y aporter
Si le temps d'exécution provient majoritairement de l'exécution du script
PHP, si tu connais le timeout de ton serveur PHP et que tu ne peux pas le
modifier, voici ce que je te conseille :
- indentifier dans ton script la boucle qui "prend du temps",
- faire un test sur le temps écoulé à l'intérieur de la boucle,
- lorsque le temps écoulé s'approche "dangereusement" du timout,
mémoriser le nombre de passages dans la boucle et sortir de la boucle,
- rediriger (via un lien cliquable ou une redirection HTTP) vers la même
page en envoyant comme paramètre le nombre de passages déjà effectués,
- lorsque le script est relancé, redémarrer la boucle là où elle s'était
arrêtée grâce au paramètre "nombre de passages".
Ai-je été clair ?
--
Frédéric Rouchouze
mailto:fredchou@nospam.free.fr
j'ai un pb de timeout je pense sur une requete de MAJ d'une de mes bases de donnée. En effet je lance celle ci depuis un script php et elle MAJ une de mes table or celle-ci est tres volumineuse, Ma question est donc : quelle est le processus qui me sort ? ( mon SGBD ou apache / et comment le savoir) quelle peuvent etre les solutions a y aporter
Si le temps d'exécution provient majoritairement de l'exécution du script PHP, si tu connais le timeout de ton serveur PHP et que tu ne peux pas le modifier, voici ce que je te conseille : - indentifier dans ton script la boucle qui "prend du temps", - faire un test sur le temps écoulé à l'intérieur de la boucle, - lorsque le temps écoulé s'approche "dangereusement" du timout, mémoriser le nombre de passages dans la boucle et sortir de la boucle, - rediriger (via un lien cliquable ou une redirection HTTP) vers la même page en envoyant comme paramètre le nombre de passages déjà effectués, - lorsque le script est relancé, redémarrer la boucle là où elle s'était arrêtée grâce au paramètre "nombre de passages".