While there currently is no fix for the apache process running up to 100% CPU when used with Lasso 8.5.6 on CentOS 5.5 32bit or 64bit and taking down the server, I have found a way to reduce the occurrence greatly. Under heavy load, the server may still ramp up, but, the apache process will still continue to respond and will release load as the load decreases. I custom compiled Apache 2.0.63 and the Lasso Connector for Apache2 for CentOS 5.5 64bit ONLY and packaged it up into a tar ball for easy installation. I have posted the tar ball here or follow the directions below. This assumes you already have Lasso 8.5.6 installed on CentOS 5.5. If you need help with that, I have a script for it too. You will either need to sudo most all of this or run as root.
# cd /usr/local/
# wget http://execuchoice.net/files/apache2.tgz
# tar xzfp apache2.tgz
# rm apache2.tgz
Now there are only a few changes needed to make the system use this custom build rather than the default install.
# mv /usr/sbin/apachectl /usr/sbin/apachectl.bak
# ln -s /usr/local/apache2/bin/apachectl /usr/sbin/apachectl
# cp -p /etc/init.d/httpd /etc/httpd.bak
Use your editor of choice –
# nano /etc/init.d/httpd
OR
# vi /etc/init.d/httpd
Look for this line:
httpd=${HTTPD-/usr/sbin/httpd}
Change to:
httpd=${HTTPD-/usr/local/apache2/bin/httpd}
and this:
CONFFILE=/etc/httpd/conf/httpd.conf
to:
CONFFILE=/usr/local/apache2/conf/httpd.conf
These changes will make the init (startup) script start apache2 from our custom build and use the appropriate config file. Once this is all done, you should just use the following to start up apache2 from our custom build.
# sudo apachectl start
To check and ensure that you are using the correct version you can simply execute the following to verify:
# ps w -C httpd
You should see something to the effect of
8889 ? S 0:00 /usr/local/apache2/bin/httpd -k start
There you have it.
Special thanks to Brian Loomis who contracted me to do this and gracefully permitted me to provide this to the public free of charge.
Be sure to let me know how it works for you. Hopefully we won’t have to rely on this for too much longer since Lasso 8.6 is now in beta testing.
Comments