Salve ragazzi,
possiedo un sito molto visitato (circa 50.000 user al giorno) e con un DB MySql con circa 60.000 news e relativi 300.000 commenti hostato su un server condiviso (non dedicato).
Purtroppo ogni tanto, in alcuni momenti sparsi per la giornata, il sito rallenta e ciò è dovuto ai numerosi processi in Sleep.
Premetto che ho le tabelle indicizzate (nessun filesort) e le query spacchettate e ottimizzate.
Mi è stato detto numerose volte, anche dal servizio di hosting, che il problema dovrebbe essere che non chiudo le connessioni ma io nel config.php ho il classico mysql_connect() e nel footer.php il classico mysql_close(). Addirittura al termine dei cicli in cui richiamo news/commenti metto mysql_free_result().
Ho provato solamente oggi a mettere il mysql_pconnect() per vedere se a questo punto con le connessioni persistenti qualcosa possa migliorare.
E' difficile capire cosa succeda perché questo avviene solo ogni tanto, oggi ad esempio è durato un'oretta dalle 14 alle 15, ho passato il tempo a killare i processi in coda mentre il servizio che mi "hosta" ogni tanto in automatico riavviava l'Sql non rendendo raggiungibile il mio sito per qualche secondo.
Ho anche un widget del mio sito che è incorporato da due forum visitatissimi e sicuramente anche quelli appesantiscono le richieste al DB ma anche il widget fa riferimento allo stesso config.php e alla fine chiude con mysql_close().
Non so più dove mettere le mani![]()
![]()
![]()