[apc-warning] – GC Cache, dlouhotrvající skripty, zatěžování serveru
- Jan Tužil
- Člen | 1
Zdravím,
na webu s návštěvností kolem 100 000 lidí denně (dle GA) máme stále
problém s údajným vytěžováním serveru a následným zablokováním ze
strany hostingu. Stránky běží na Nette frameworku, hosting poskytuje
Webcloud.
Stránky však běží bez sebemenších problému, načítají se OK téměř ihned. Webcloud je ale zablokuje s tím, že vytěžujeme celý server a stránky je potřeba zoptimalizovat, dle error logu. Prý se některé skripty načítají výrazně dlouho. V error logu se stále dokola zapisuje varování např.:
Aug 16 16:13:15 www-05 logger: [Sat Aug 16 16:13:15 2014] [apc-warning] GC cache entry ‚…cesta k souboru…‘ (dev=31 ino=15078286) was on gc-list for 361 seconds in …cesta k souboru úplně jiného webu… on line 124
Přitom první cesta jsou vždy soubory Nette frameworku a druhá cesta vede
k souboru úplně cizího webu.
Podpora nám také poslala log z apache cache, kde je zase doopravdy vidět,
že se některé skripty zpracovávají až stovek sekund.
Jak vyřešit skripty, které se občas načítají až stovky sekund? Pokud navštívím jakoukoliv adresu z logu, která se načítala výrazně déle, ihned se zpracuje a okamžitě vidím obsah dané stránky. Osobně jsem toto chování na webu zatím nezaznamenal. Stačí nastavit max_execution_time?
- Jan Tvrdík
- Nette guru | 2595
Tak max_execution_time bys měl mít nastaveno každopádně, nezávisle na tom, zda máš problémy s výkonem. Nicméně to problém tak leda utlumí, těžko ho to vyřeší.
Hledal bys někde dead-lock. Nepoužíváš třeba na session Kdyby\Redis s emulated storage?