Archiv verlassen und diese Seite im Standarddesign anzeigen : Unlimitierter RAM für php funktioniert nicht
Huhu,
ich möchte php auf meinem Testrechner erlauben, alles verfügbaren RAM zu nutzen, der da ist. Also habe ich versucht, in der php.ini das memory_limit auf -1 gesetzt und im php-Script selbst auch oben ini_set('memory_limit', '-1'); eingetragen.
Allerdings bricht das Script ab, auch wenn der RAM nicht mal zur Hälfte voll ist :(
PHP Fatal error: Out of memory (allocated -1142685696) (tried to allocate 20 bytes) in script.php on line 26
Habe ich vllt. etwas vergessen, oder nicht richtig konfiguriert? :S
ThorstenHirsch
12.03.15, 20:41
Welche Architektur? 64bit?
Wieviel RAM, wieviel swap, wann bricht PHP ab?
Ist PHP auch in 64bit installiert?
Sind andere limits gesetzt? (ulimt, rlimit, cgroup)
... und dann wäre da noch die Frage, was das Betriebssystem denn zu der Thematik "freier Speicher" sagt.
corresponder
12.03.15, 22:28
phpinfo.php zeigt dir die einstellungen, die greifen....
gruss
c.
Hallo,
Danke erstmal für die Antworten! :)
Welche Architektur? 64bit?
Linux debian 3.2.0-4-686-pae #1 SMP Debian 3.2.65-1+deb7u2 i686 GNU/Linux
32Bit mit 16GB RAM (ja, das geht)
Wieviel RAM, wieviel swap, wann bricht PHP ab?
Der Screenshot im Anhang zeigt htop, kurz nachdem das Script abgebrochen ist.
Ist PHP auch in 64bit installiert?
Sind andere limits gesetzt? (ulimt, rlimit, cgroup)
php ist standardmäßig installiert, außer memory_limit habe ich auch nichts weiter geändert.
Wüsste also nicht, dass da noch etwas ist.
Man könnte anhand des Screenshots auf die Idee kommen, dass das OS aufgrund seiner 32Bittigkeit doch nur 4GB RAM nutzen kann. Allerdings kann ich die 16GB ohne Probleme nutzen (PAE sei Dank ;) )(s. zweiter Anhang).
Oder hat php da noch extra eine Beschränkung?
Das memory_limit wurde auch in der phpinfo()-Information übernommen.
... und dann wäre da noch die Frage, was das Betriebssystem denn zu der Thematik "freier Speicher" sagt.
Wenn du die Festplatte meinst, da ist noch genug frei :D
Danke euch! :)
Das OS kann die den Mehr-Speicher nutzen, aber nicht die laufenden Anwendungen - die sind pro Prozess auf 4GB limitiert.
Hm, das erklärt das Problem, Danke!
Kann man das irgendwie ändern (ich vermute mal nicht)?
Hm. Na gut.
Kann ich das ohne Neuisntallation migrieren?
Habe gelesen, dass man von Squeeze auf Wheezy im Zuge des Upgrades migrieren konnte, geht das auch mit Wheezy-->Jessi?
Warum überhaupt Testing?
Du willst kein Upgrade machen sondern die Architektur wechseln, installier neu und kopiere deine Daten rüber.
mfg
cane
Naja, das wollte ich gerade verhindern; ich wollte mein OS behalten. Mal sehen, wird mir wohl nichts anderes übrig bleiben.
Danke.
Grundlegend kannst Du natürlich schon ein Update machen - im Endeffekt tauschst Du so oder so das komplette OS aus und ggf. ist beim Update die eine oder andere Klippe zu umschiffem was Abhängigkeiten und ggf. Kollisionen angeht. Daher ist Architekturwechsel eigentlich am idealsten über eine Neuinstallation zu erledigen.
Für die Risiko-Variante - es gibt HowTos im Netz, die fangen aber alle mit dem Punkt "Datensicherung, falls es schief geht" an. Aus Erfahrung heraus: Zurecht.
OK, ihr habt mich ja überzeugt :D
Dann halt am Wochenende wieder neu installieren, trotzdem danke ;)
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.