My apache server have been crushed.. Now when i restart the apache server is working for 2 min. and then is down again?
What can be the problem and what can i do?
SIG TOO SMALL! Maximum 1200x600 button and no more than 30 text lines of ALL SIZES and COLORS. Unless your sig is for a GFY top banner sponsor, then you may use a 6240x4800 instead of a 1024x800.
yea, that could definetely cause apache to puke, especially as soon as you reboot
SIG TOO SMALL! Maximum 1200x600 button and no more than 30 text lines of ALL SIZES and COLORS. Unless your sig is for a GFY top banner sponsor, then you may use a 6240x4800 instead of a 1024x800.
i see in the error logs 1 request/sec from 216.17.131.*.. can this be the cause? 1request/sec is not much
Shouln't really be an issue, unless he's hitting some of your scripts
that use a lot of resources.
You can block it tho to eliminate it from the possible causes.
If you are experincing long delays while "Waiting for reply...." with Apache servers you may try the following hack I use frequently to speed up your systems performance. Apache comes with a limit of 256 Child Processes defined in its hard server limit (in the source code). This can kill apache when it is used for a very very busy site.
Normally in the httpd.conf file you can only set a maximum of 256 MaxClients. This is not enough for a busy site. To change this limit (which the makers of apache suggest as well), edit src/includes/httpd.h and change the value of HARD_SERVER_LIMIT. Bump it up to 1024, then set your httpd.conf files MaxClients to like 512. That should be ample. Re-compile apache and you are done.
Note: Linux itself has a "Max Processes" per user limit. Add this to your root .bashrc file:
ulimit -u unlimited
You must exit and re-login before starting your new apache! Otherwise you will run into problems. To verify that you are ready to go, make sure that when you type ulimit -a as root, it shows "unlimited" next to max user processes.
(note: you may also do ulimit -u unlimited at the command prompt before starting httpd instead of adding it to the .bashrc file, but I always forgot, so I just added it in the .bashrc file as a safety net.. Another good place to put ulimit -u unlimited is in the httpd startup file in /etc/rc.d/init.d)
If you are using Apache 2.0 +, its much easier.. :-)
(note: you may also do ulimit -u unlimited at the command prompt before starting httpd instead of adding it to the .bashrc file, but I always forgot, so I just added it in the .bashrc file as a safety net.. Another good place to put ulimit -u unlimited is in the httpd startup file in /etc/rc.d/init.d)
Have you used top or ps commands to see what is going on? See if that IP is hitting some script that is maxing resources... Just like windows, Linux will eat shit and die if a script is maxing it out.
I think its complete bullshit that you would do that.
You intentionally went looking for MY article and come up with a cut and paste of it,
then accuse me of plagurizing? Fuck that shit.
Loosen up? Dont you feel you owe an apology? That was not too cool dude.
I can take a joke and I have thick skin dude, however that was completely out of line.
There are some things which chris didnt mention which should be taken into cosideration.
You need to make sure you got enough ram to support the multiple httpd processes. If you do NOT then apache will start hitting your swap drive and most likely slow the server down beyond any speed improvements you would have gained with the max clients.
Next i would disable all the options compiled in which you dont need and disable all the modules you dont need too. This could cut the memory usage by MBs per Apache child process.
Delays could also be caused by the HostnameLookup option which is probably on. Disable it. It's worthless. If you really want to know what hostname belongs to which IP use webalizer and have it do the DNS resolving rather than apache.
Also, instead of the Max Clients you can lower your keep-alive timeout value so each process doesnt stick around as long did and would allow a child processes to die off sooner rather than later.
Comment