Rendszeres PHP memória hiba!
Sziasztok, van egy nagyon égető probléma. Egy olyan két hete jelentkezett először, hogy a PHP oldalak helyett az alábbi üzenet jön be:
PHP Fatal error: out of dynamic memory in yy_create_buffer() in Unknown on line 0
Egyszerűen nem tudok rájönni, és mostmár egyre sűrűbben jön elő. Script memóriája a php-nak 16M-ra van állítva!
Nem tudtok véletlen valami gyógymódot rá?
Ezer köszönet. Üdv. Topi.
■ PHP Fatal error: out of dynamic memory in yy_create_buffer() in Unknown on line 0
Egyszerűen nem tudok rájönni, és mostmár egyre sűrűbben jön elő. Script memóriája a php-nak 16M-ra van állítva!
Nem tudtok véletlen valami gyógymódot rá?
Ezer köszönet. Üdv. Topi.
Pedig memőria a kevés
[2]
[3]
Javaslom hogy kezdd el megemelni a PHP memlimitet. 16Mb édeskevés amúgyis. Ha meg gyorsan ki akarod próbálni hogy működik-e ez a trükk, akkor egyből lőhetsz neki 128M/per instace(mivel ez csak limit, nem pedig minimum foglalás). Az mondjuk hogy eddig ez a hiba nem jelentkezett, jót nem sejtet. Ha megoldja a problémádat a limit növelése, akkor ki kellene derítened, hogy miért kell a scriptednek most több memória, mint régen.
Elmúlt, visszajött...
PHPNuke rendszereket szívemből gyűlölöm, nálam nincs is, tehát az biztos nem okoz semmit :D
rossz a script ;)
Nos, ha annak elelnére, hogy elolvastad a cikkeket még mindig elfogy a memória ;) próbáld meg megnézni, melyik phpscript futása alatt van. Ha csak egynél, de annál bizonyos feltételek között mindig, garantáltan programozásbeli hülyeség/elírás. Használd a memory_get_usage() függvényt az aktuális memóriahasználat ellenőrzésére (WIN alatt 'természetesen' ilyen nincsen, de kerülő megoldások vannak, lásd a manualt...
Néhány variáció, hogy lehet túllépni a memóriát:
- rekurzív algoritmus túl mély és mindig szép mennyiségű adatot adsz át neki..
- végtelen ciklussal gyártasz egyre nagyobb mennyiségű adatot és mielőtt végtelennek titulálná, már el is fogy a memó
- egy fájlt (CSV, vagy más 'adatbázisnak' használt) a file() függvénnyel olvasol be (ekkor minden ugye memóriába kerül) és ezen dolgozol, esetleg még másolatot is létrehozol, és/vagy regexpezel rajta eléggé bonyolult kifejezésekkel
Esetleg még az jöhet szóba, hogy a szerveren nincs elég szabad memória? - bár ekkor default swappolni kéne és lassulnia ;)
Remélem, tudtam segíteni...