I am running Apache 2.4.25 + HTTP/2 in an MPM Prefork + PHP DSO configuration.
According to the change log for Apache 2.4.27, HTTP/2 won't work anymore with Prefork:
Therefore I have changed the MPM to Event, but this causes EA4 to instruct me to use PHP-FPM.
The overall website performance since switching to PHP-FPM has been much better.
However, this morning (48+ hours after switching to PHP-FPM), the server had appeared to be out of disk space. Further investigation indicated the error.log file located within /opt/cpanel/ea-php56/root/usr/var/log was consuming more than 13GB! A quick tail of the file showed line-after-line of notices saying worker started, worker closed. These lines repeated what looked like hundreds of times a second! Unfortunately I had to delete the file to resolve the disk space issue.
Since rebooting the server, the file now looks like this:
# tail -f error.log -n 128
[12-Jul-2017 09:22:43] NOTICE: fpm is running, pid 1275
[12-Jul-2017 09:22:43] NOTICE: ready to handle connections
[12-Jul-2017 09:22:43] NOTICE: systemd monitor interval set to 10000ms
[12-Jul-2017 09:24:05] WARNING: [pool dev3_reades_local] server reached max_children setting (5), consider raising it
[12-Jul-2017 09:40:15] NOTICE: Terminating ...
[12-Jul-2017 09:40:15] NOTICE: exiting, bye-bye!
[12-Jul-2017 09:40:17] NOTICE: fpm is running, pid 4764
[12-Jul-2017 09:40:17] NOTICE: ready to handle connections
[12-Jul-2017 09:40:17] NOTICE: systemd monitor interval set to 10000ms
[12-Jul-2017 09:40:46] NOTICE: Terminating ...
[12-Jul-2017 09:40:46] NOTICE: exiting, bye-bye!
[12-Jul-2017 09:40:46] NOTICE: fpm is running, pid 5124
[12-Jul-2017 09:40:46] NOTICE: ready to handle connections
[12-Jul-2017 09:40:46] NOTICE: systemd monitor interval set to 10000ms
This is the entire log. Since 09:40, I have accessed the website numerous times but no additional entries have been written.
Why would the log file use the entire disk to start with? Is there anything I can do to prevent this happening in future?
Also according to this, it says "pm" defaults to "ondemand" and the PHP configuration here says max_children is used when pm is set to "static". Since that is not the case, why does the log suggest I need to change the max_children value?
According to the change log for Apache 2.4.27, HTTP/2 won't work anymore with Prefork:
Code:
*) COMPATIBILITY: mod_http2: Disable and give warning when using Prefork.
The server will continue to run, but HTTP/2 will no longer be negotiated.
[Stefan Eissing]
The overall website performance since switching to PHP-FPM has been much better.
However, this morning (48+ hours after switching to PHP-FPM), the server had appeared to be out of disk space. Further investigation indicated the error.log file located within /opt/cpanel/ea-php56/root/usr/var/log was consuming more than 13GB! A quick tail of the file showed line-after-line of notices saying worker started, worker closed. These lines repeated what looked like hundreds of times a second! Unfortunately I had to delete the file to resolve the disk space issue.
Since rebooting the server, the file now looks like this:
# tail -f error.log -n 128
[12-Jul-2017 09:22:43] NOTICE: fpm is running, pid 1275
[12-Jul-2017 09:22:43] NOTICE: ready to handle connections
[12-Jul-2017 09:22:43] NOTICE: systemd monitor interval set to 10000ms
[12-Jul-2017 09:24:05] WARNING: [pool dev3_reades_local] server reached max_children setting (5), consider raising it
[12-Jul-2017 09:40:15] NOTICE: Terminating ...
[12-Jul-2017 09:40:15] NOTICE: exiting, bye-bye!
[12-Jul-2017 09:40:17] NOTICE: fpm is running, pid 4764
[12-Jul-2017 09:40:17] NOTICE: ready to handle connections
[12-Jul-2017 09:40:17] NOTICE: systemd monitor interval set to 10000ms
[12-Jul-2017 09:40:46] NOTICE: Terminating ...
[12-Jul-2017 09:40:46] NOTICE: exiting, bye-bye!
[12-Jul-2017 09:40:46] NOTICE: fpm is running, pid 5124
[12-Jul-2017 09:40:46] NOTICE: ready to handle connections
[12-Jul-2017 09:40:46] NOTICE: systemd monitor interval set to 10000ms
This is the entire log. Since 09:40, I have accessed the website numerous times but no additional entries have been written.
Why would the log file use the entire disk to start with? Is there anything I can do to prevent this happening in future?
Also according to this, it says "pm" defaults to "ondemand" and the PHP configuration here says max_children is used when pm is set to "static". Since that is not the case, why does the log suggest I need to change the max_children value?