My server crashed when tested with Siege... why?

First off, I am very much a beginner when it comes to server administration and I am using a 512 Linode.

I was using Siege to test my server under higher usage. Everything was OK until I bumped up the number of users to a high number (50), at which point my server stopped responding all together. I had to reboot from the Linode control panel.

So… what was probably the reason for the server becoming unresponsive (and staying unresponsive after the Siege was long over)?

Why did I have to reboot to fix?

Is there anything I could do to avoid this issue if a large amount of traffic suddenly occurs?

I assume all the above has to do with memory, but I could a point in the right direction. Thank you for your wisdom!

4 Replies

You ran out of memory, so OOMKiller started shooting random processes, which is why it stayed unresponsive… something important got killed.

You should reduce the MaxClients setting in your Apache config (in the section) to something like 15.

That is good advice, thank you.

If I lower MaxClients to 15, what happens to user #16? They just wait a little longer?

Thanks again!

Yes, they get queued. MaxClients is the number of simultaneous clients that can be served. As long as you have no idle connections for some sort of AJAX type stuff, that means that if a client is being consumed, it's because the server is working to process their request. There comes a point where processing more simultaneous requests is counter-productive, because you've got a bottleneck somewhere and splitting things even more ways just slows things down for everyone.

Make sure your services (DB/WEB) are setup to queue (or even reject) requests when flooded. It's better to have an message from apache saying the max clients has been reached than crashing everyone.

Obviously, if you need to handle a lot of trafic, upgrade to a higher Linode.

A good way to tell if your machine is properly setup is to flood your website with requests (using jmeter or other) and see if you can crash the thing or not.

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct