Newsgroup: it.comp.www.php
Titolo: Individuare problema di timeout su un server produzione

Ho un problema con un sito in produzione, il gestore dell'hosting mi dice 
che il sito rallenta e gli script vanno sistematicamente in timeout.
Il sito sul server locale funziona perfettamente. E' pur vero che gli 
accessi sul serve di produzione sono maggiori, anche se non esagerati 
(200,300 utenti/giorno).
Purtroppo il gestore dell'hosting rimane sempre sul vago quando mi riporta 
il problema, mi dice solo che gli script vanno in timeout e che mi deve 
sospendere il servizio.
Mi ha anche spedito alcuni log, ma da questi non si capisce poi molto:
(-1073741808) Error 14/05/2004-10.32.32, account , source: W3SVC, category: 
(0), event: The script started from the URL '/static/index.php' with 
parameters '' has not responded within the configured timeout period. The 
HTTP server is terminating the script. 
For additional information specific to this message please visit the 
Microsoft Online Support site located at: 
http://www.microsoft.com/contentredirect.asp
. 
Come faccio a capire dove potrebbe essere il problema? Purtroppo non ho 
accesso diretto al server, solo FTP.
Il server è un win2K, php è la 4.3.4. Il sito fa uso di un server mySql, 
che è installato su un'altra macchina win2K, ed è un 3.23.36.
Ho già controllato eventuali endless loop e non ne ho trovati.
Come posso fare? Dite di provare con un stress utility sul server locale? 
Me ne sapreste suggerire uno?
Grazie.
-- 
L'indirizzo di posta non è valido! Per contattarmi in privato usate il 
form: 
http://www.gerry.it/serve/mail/
The mail address given is invalid, if you want to contact me, please use 
this form instead: 
http://www.gerry.it/serve/mail/
October, and kingdoms rise
And kingdoms fall
But you go on
(U2)

 [...]
Un mio amico ha avuto problemi simili (IIS non gradisce troppo i binomio
php/mysql), il problema era l'uso del formato innodb per le tabelle, che a
quanto pare non e' gestito bene da mysql 3.x su win32.
Prova a vedere se il problema e' solo nelle pagine che fanno uso di
connessioni al database o sempre...
Inoltre, se e' lo stesso problema del mio amico, dovresti pure passare da
odbc a mysql direttamente (sempre che tu usi odbc e non mysql_xxxx per le
operazioni).
Saluti
-- 
Gpg pubkey available on 
http://belgium.keyserver.net
Fingerprint: B804 93B8 6EB8 F34E 2DE9 66A7 129D 76BC BE76 3C7C
Linux registered user #192634

 per le operazioni).
Non ho mai usato ODBC, solo le librerie native di mySql.


sospendere il servizio.
Prima di tutto vedi quant'e' il timeout: basta che tu uploadi un file che
fa
 
<?
	sleep($_REQUEST['sleep']);
	print "Yawn!";
?>
e provi aumentando sleep. Se ti ha bloccato a 5 secondi, be' - capisci da
te che in locale, col time_limit a 30 secondi, e' altrarobba.
Poi a notte fonda (poco traffico) usa una versione di pagina che registri
dei marcatempo durante l'esecuzione:
<?
	$marcatempo = array();
	...
	$marcatempo['prima della query'] = date('H:i:s');
	...
	$marcatempo['dopo la query'] = date('H:i:s');
	...
	print_r($marcatempo);
?>
e poi riprova ad altri orari per vedere cosa succede, se sei tu, o se e'
il traffico. Controlla soprattutto i tempi di connessione ed esecuzione.
Leonardo
-- 
Avere studiato senza mettere in pratica e' inutile;
mettere in pratica senza avere studiato e' pericoloso.
                                                - Conphpucio