Arbeitsspeicher wird nicht ausreichend von Xampp allociert

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

Arbeitsspeicher wird nicht ausreichend von Xampp allociert

Postby jagerit » 06. June 2012 10:49

Hallo,

Ich habe eine kleine Suchmaschine für ein Krankenhaus geschrieben. Hier werden PDF Dokumente hochgeladen und in eine Freitextsuchmaschine integriert. Wenn die Freitextsuche startet gibt Xampp nicht genügend Speicher frei und die Fehlermeldung lautet folgendermaßen:

Fatal error: Out of memory (allocated 1048576) (tried to allocate 942872659 bytes) in E:\xampp\htdocs\evdms\freitextsuche.php on line 80


folgende Einstellungen habe ich in der php.ini vorgenommen:

Ich habe folgende php.ini's bearbeitet:

xampp/apache/bin/php.ini
und
xamp/php/php.ini

und für den Memory folgende Einstellungen vorgenommen:

max_execution_time = 60 ; Maximum execution time of each script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
memory_limit = 1800M ; Maximum amount of memory a script may consume (16MB)


Nach den Einstellungen wurden die Xampp-Dienste neugestartet und es kam zu keinem Erfolg.

Kann mir bitte jemand sagen was ich noch ändern oder anpassen kann?

Der Server hat Hardwareseitig 4GB RAM , wovon ich gerne 2-3 für die für die Nutzung von Xampp vergeben möchte.

Vielen Dank für Eure Hilfe im vorraus.

MFG
jagerit
jagerit
 
Posts: 4
Joined: 30. May 2012 14:35
Operating System: Windows 2003 Server

Re: Arbeitsspeicher wird nicht ausreichend von Xampp allocie

Postby Altrea » 06. June 2012 15:04

Hallo jagerit,

jagerit wrote:Nach den Einstellungen wurden die Xampp-Dienste neugestartet und es kam zu keinem Erfolg.

Das ist keine qualifizierte Fehlerbeschreibung. Nach Änderungen an den Rahmenbedingungen müssen Fehlermeldungen wieder neugedeutet werden. Dazu ist es notwendig, wenn wir die Fehlermeldung, die trotz der Änderungen auftaucht wieder zu Gesicht bekommen.

Falls die Fehlermeldung dieselbe geblieben ist (und damit meine ich nichtnur den Text, sondern auch die Größenangaben) kann die Analyse nur lauten, dass deine Änderungen nicht gegriffen haben. Dann hast du entweder nicht die richtige php.ini bearbeitet (phpinfo() gibt dir Informationen darüber, welche php.ini aktuell verwendet wird) oder deine Einstellung wird in einer .htaccess Datei oder .php Datei überschrieben. Auch das kannst du mit phpinfo() herausfinden. In dem Fall sollte der Befehl phpinfo() aber möglichst direkt in das Script eingefügt werden und zwar an der Stelle, wo der Fehler auftritt. Wichtig dabei sind dann sowohl der lokale als auch der globale Wert von memory_limit.

laut deinen Profilangaben verwendest du noch eine stark veraltete XAMPP Version. Davon würde ich vollkommen abraten, erst Recht, wenn das System produktiv genutzt werden können soll.

mit freundlichen Grüßen,
Altrea
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: Arbeitsspeicher wird nicht ausreichend von Xampp allocie

Postby jagerit » 14. August 2012 12:22

Ich habe nochmals versucht die Suchfunktion auf einer anderem Maschine mit aktuellem Xampp zu laufen zu bringen.
Jedoch erhalte ich den selben fehler.

Ich habe hier wiederum in der php.ini, welche vom der Suchmaschine genutzt wird den Eintrag:

memory_limit = 2000M

auf 2000 MB gesetzt.

jedoch erhalte ich nach wie vor die Meldung :

Fatal error: Out of memory (allocated 1048576) (tried to allocate 1745487213 bytes) in E:\xampp\htdocs\evdms\freitextsuche.php on line 83

Laut meiner Interpretation heißt das, dass Xampp nur 1 MB freigibt. Gibt es eine maximale Arbeitsspeichergrenze die Xampp verwalten und freigeben kann?

Sind diese Angaben nun ausreichender und qualifizierter?

Vielen Dank für die weitere Hilfe im Vorraus.

mfg
jagerit
jagerit
 
Posts: 4
Joined: 30. May 2012 14:35
Operating System: Windows 2003 Server

Re: Arbeitsspeicher wird nicht ausreichend von Xampp allocie

Postby Altrea » 14. August 2012 19:28

jagerit wrote:Sind diese Angaben nun ausreichender und qualifizierter?

Definitiv, denn dadurch haben wir jetzt die zusätzliche Information, dass die von dir gemachte Änderung nicht nur keine Änderung bewirkt hat, sondern PHP weiterhin dieselbe Speichergrenze verwendet wie vorher auch. Was das bedeutet habe ich im vorigen Beitrag ja schonmal vorsorglich geschrieben: entweder wird der Wert garnicht erst übernommen oder überschrieben.

Das kannst du auch leicht überprüfen, indem du an der besagten Stelle wo der Fehler auftritt folgendes einfügst:
Code: Select all
echo ini_get('memory_limit');

Als Rückgabe wirst du wahrscheinlich 1M bekommen.

Stellt sich nur die Frage, ob der Wert nicht übernommen wurde oder überschrieben wird. Dies kannst du herausfinden, indem du phpinfo() an der Fehlerstelle ausführst und "Local Value" mit "Master Value" vergleichst. Sind sie identisch wird deine Änderung garnicht erst aktiv, sind sie unterschiedlich wird der Wert in deiner Anwendung wieder irgendwo überschrieben.

jagerit wrote:Laut meiner Interpretation heißt das, dass Xampp nur 1 MB freigibt.

Genau gesagt bedeutet es, dass PHP nicht mehr als 1MB Speicher für sich anfordern darf, weil dies so durch die PHP Einstellung memory_limit definiert ist.

jagerit wrote:Gibt es eine maximale Arbeitsspeichergrenze die Xampp verwalten und freigeben kann?

"XAMPP" ist ein sehr unspezifischer Begriff, da dies nur die Bezeichnung für das geschnürte Paket von Einzelkomponenten ist. Jede Einzelkomponente für sich kann und wird im Betrieb Speicher anfordern und bei speicherkritischen Komponenten (hier zum Beispiel PHP, Apache und MySQL) kann man die maximale RAM Allokation in der Regel durch eine Obergrenze konfigurieren.
Technisch gesehen liegt die Obergrenze bei dem maximal addressierbaren Raum (bei 32Bit Systemen unter 4GB).

mit freundlichen Grüßen,
Altrea
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: Arbeitsspeicher wird nicht ausreichend von Xampp allocie

Postby jagerit » 16. August 2012 10:23

Hallo vielen Dank für die schnelle Antwort.

Wenn ich den Befehl echo ini_get('memory_limit'); einbaue erhalte ich die Meldung: 2000M. Er scheint bis dahin also alles korekt zu machen. Nach ausführen des Scripter erhalte ich wieder die Meldung: 2000M aber der Fehler kommt erneut:

Fatal error: Out of memory (allocated 1572864) (tried to allocate 942872659 bytes) in E:\xampp\htdocs\evdms\freitextsuche.php on line 84

Er scheint es bei dem Suchdurchlauf also nicht zu nutzen.

Auch wenn ich die Master Value und Local Value Werte vergleiche sind diese Identisch.

Viele Grüße

jagerit
jagerit
 
Posts: 4
Joined: 30. May 2012 14:35
Operating System: Windows 2003 Server

Re: Arbeitsspeicher wird nicht ausreichend von Xampp allocie

Postby jagerit » 17. August 2012 10:06

noch eine interessante Ergänzung. Wenn Ich den Speicher auf 1665M setze wird er auch beim Scriptaufruf verarbeitet.
Jedoch jeder Speicherwert der drüber liegt wird wie oben geschrieben nicht mehr im Script verarbeitet.

MFG

jagerit
jagerit
 
Posts: 4
Joined: 30. May 2012 14:35
Operating System: Windows 2003 Server


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 33 guests