Avoid oom-killer by limiting simultaneous users
up vote
5
down vote
favorite
I'm trying to avoid a situation where I'm running out of ram resulting in the server locking up (oom-killer).
To achieve this I'm trying to update my Amazon Linux AMI instance to limit the number of simultaneous connections.
I have Apache 2.4 and following this guide, added the following to my httpd.conf:
MaxRequestWorkers = 112
ServerLimit = 112
However this results in the following warning on httpd restart:
"MaxRequestWorkers takes one argument, Maximum number of children
alive at the same time"
apache-2.4
add a comment |
up vote
5
down vote
favorite
I'm trying to avoid a situation where I'm running out of ram resulting in the server locking up (oom-killer).
To achieve this I'm trying to update my Amazon Linux AMI instance to limit the number of simultaneous connections.
I have Apache 2.4 and following this guide, added the following to my httpd.conf:
MaxRequestWorkers = 112
ServerLimit = 112
However this results in the following warning on httpd restart:
"MaxRequestWorkers takes one argument, Maximum number of children
alive at the same time"
apache-2.4
1
nginx use significantly less ram than apache, nginx can easily handle 5,000 connections with less ram than it takes apache to handle 10 connections >.> you could try switching to nginx and see if that helps. - help.dreamhost.com/hc/en-us/articles/…
– hanshenrik
Nov 20 at 16:38
add a comment |
up vote
5
down vote
favorite
up vote
5
down vote
favorite
I'm trying to avoid a situation where I'm running out of ram resulting in the server locking up (oom-killer).
To achieve this I'm trying to update my Amazon Linux AMI instance to limit the number of simultaneous connections.
I have Apache 2.4 and following this guide, added the following to my httpd.conf:
MaxRequestWorkers = 112
ServerLimit = 112
However this results in the following warning on httpd restart:
"MaxRequestWorkers takes one argument, Maximum number of children
alive at the same time"
apache-2.4
I'm trying to avoid a situation where I'm running out of ram resulting in the server locking up (oom-killer).
To achieve this I'm trying to update my Amazon Linux AMI instance to limit the number of simultaneous connections.
I have Apache 2.4 and following this guide, added the following to my httpd.conf:
MaxRequestWorkers = 112
ServerLimit = 112
However this results in the following warning on httpd restart:
"MaxRequestWorkers takes one argument, Maximum number of children
alive at the same time"
apache-2.4
apache-2.4
asked Nov 20 at 13:10
Dan382
1415
1415
1
nginx use significantly less ram than apache, nginx can easily handle 5,000 connections with less ram than it takes apache to handle 10 connections >.> you could try switching to nginx and see if that helps. - help.dreamhost.com/hc/en-us/articles/…
– hanshenrik
Nov 20 at 16:38
add a comment |
1
nginx use significantly less ram than apache, nginx can easily handle 5,000 connections with less ram than it takes apache to handle 10 connections >.> you could try switching to nginx and see if that helps. - help.dreamhost.com/hc/en-us/articles/…
– hanshenrik
Nov 20 at 16:38
1
1
nginx use significantly less ram than apache, nginx can easily handle 5,000 connections with less ram than it takes apache to handle 10 connections >.> you could try switching to nginx and see if that helps. - help.dreamhost.com/hc/en-us/articles/…
– hanshenrik
Nov 20 at 16:38
nginx use significantly less ram than apache, nginx can easily handle 5,000 connections with less ram than it takes apache to handle 10 connections >.> you could try switching to nginx and see if that helps. - help.dreamhost.com/hc/en-us/articles/…
– hanshenrik
Nov 20 at 16:38
add a comment |
1 Answer
1
active
oldest
votes
up vote
15
down vote
The tutorial you followed has a pretty blatant error. Apache directives do not have an =
character between the directive name and value.
The directives should read:
MaxRequestWorkers 112
ServerLimit 112
Keep in mind that this isn't likely to help all that much. The first thing you should do is switch to the event MPM (and php-fpm for PHP usage). If you are still using the 25 year old prefork MPM you are sacrificing a lot of performance and memory for little good reason. Just making this switch is likely to reduce your OOM issues while increasing performance dramatically.
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
15
down vote
The tutorial you followed has a pretty blatant error. Apache directives do not have an =
character between the directive name and value.
The directives should read:
MaxRequestWorkers 112
ServerLimit 112
Keep in mind that this isn't likely to help all that much. The first thing you should do is switch to the event MPM (and php-fpm for PHP usage). If you are still using the 25 year old prefork MPM you are sacrificing a lot of performance and memory for little good reason. Just making this switch is likely to reduce your OOM issues while increasing performance dramatically.
add a comment |
up vote
15
down vote
The tutorial you followed has a pretty blatant error. Apache directives do not have an =
character between the directive name and value.
The directives should read:
MaxRequestWorkers 112
ServerLimit 112
Keep in mind that this isn't likely to help all that much. The first thing you should do is switch to the event MPM (and php-fpm for PHP usage). If you are still using the 25 year old prefork MPM you are sacrificing a lot of performance and memory for little good reason. Just making this switch is likely to reduce your OOM issues while increasing performance dramatically.
add a comment |
up vote
15
down vote
up vote
15
down vote
The tutorial you followed has a pretty blatant error. Apache directives do not have an =
character between the directive name and value.
The directives should read:
MaxRequestWorkers 112
ServerLimit 112
Keep in mind that this isn't likely to help all that much. The first thing you should do is switch to the event MPM (and php-fpm for PHP usage). If you are still using the 25 year old prefork MPM you are sacrificing a lot of performance and memory for little good reason. Just making this switch is likely to reduce your OOM issues while increasing performance dramatically.
The tutorial you followed has a pretty blatant error. Apache directives do not have an =
character between the directive name and value.
The directives should read:
MaxRequestWorkers 112
ServerLimit 112
Keep in mind that this isn't likely to help all that much. The first thing you should do is switch to the event MPM (and php-fpm for PHP usage). If you are still using the 25 year old prefork MPM you are sacrificing a lot of performance and memory for little good reason. Just making this switch is likely to reduce your OOM issues while increasing performance dramatically.
answered Nov 20 at 13:17
Michael Hampton♦
162k26303614
162k26303614
add a comment |
add a comment |
Thanks for contributing an answer to Server Fault!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f940882%2favoid-oom-killer-by-limiting-simultaneous-users%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
nginx use significantly less ram than apache, nginx can easily handle 5,000 connections with less ram than it takes apache to handle 10 connections >.> you could try switching to nginx and see if that helps. - help.dreamhost.com/hc/en-us/articles/…
– hanshenrik
Nov 20 at 16:38