I am running Moodle 1.9.2 on an older dual Pentium III Dell server with 1.5 GB of memory in a single school with at most several hundred students using Moodle at the same time.
The underlying server architecture is the XAMPP package consisting of Apache 2.2.3, PHP 5.2.1.1, and MySQL (5.? I assume)
When too many people initiate transactions at once, Apache crashes. I have Apache configured to restart, but the drop-out is about 3 minutes long.
Apache's error.log contains the following entry:
zend_mm_heap corrupted
[Tue Jan 27 10:17:11 2009] [notice] Parent: child process exited with status 1 -- Restarting.
[27-Jan-2009 10:17:04] PHP Fatal error: Out of memory (allocated 6029312) (tried to allocate 24576 bytes) in W:\webroot\moodle\lib\accesslib.php on line 233
[27-Jan-2009 10:17:04] PHP Fatal error: Out of memory (allocated 4718592) (tried to allocate 24576 bytes) in W:\webroot\moodle\lib\weblib.php on line 6822
[27-Jan-2009 10:17:05] PHP Fatal error: Out of memory (allocated 4456448) (tried to allocate 98304 bytes) in W:\webroot\moodle\lib\weblib.php on line 5394
[27-Jan-2009 10:17:05] PHP Fatal error: Out of memory (allocated 3407872) (tried to allocate 24576 bytes) in W:\webroot\moodle\lib\weblib.php on line 897
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 120 ; 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 = 32M ; Maximum amount of memory a script may consume (16MB)
I know the server is old, and the XAMPP package could be updated, but is there any way to configure Apache and PHP to avoid the crashes??
Thanks in advance for your help.
--j