# NAME Apache::LoadAvgLimit - limiting client request by system CPU load-averages (deprecated) # SYNOPSIS in httpd.conf, simply PerlInitHandler Apache::LoadAvgLimit PerlSetVar LoadAvgLimit 2.5 or fully PerlInitHandler Apache::LoadAvgLimit PerlSetVar LoadAvgLimit_1 3.00 PerlSetVar LoadAvgLimit_5 2.00 PerlSetVar LoadAvgLimit_15 1.50 PerlSetVar LoadAvgRetryAfter 120 # CAUTION __THIS MODULE IS MARKED AS DEPRECATED.__ The module may still work for you, but consider switch to psgi like below: use Plack::Builder; use HTTP::Exception; use Sys::Load; builder { enable 'HTTPExceptions'; enable_if { (Sys::Load::getload())[0] > 3.00 } sub { sub { HTTP::Exception::503->throw } }; $app; }; You can run mod\_perl1 application as psgi with [Plack::Handler::Apache1](http://search.cpan.org/perldoc?Plack::Handler::Apache1). # DESCRIPTION If system load-average is over the value of __LoadAvgLimit\*__, Apache::LoadAvgLimit will try to reduce the machine load by returning HTTP status 503 (Service Temporarily Unavailable) to client browser. Especially, it may be useful in directory that has heavy CGI, Apache::Registry script or contents-handler program. # PARAMETERS __LoadAvgLimit__ When at least one of three load-averages (1, 5, 15 min) is over this value, returning status code 503. __LoadAvgLimit\_1__, __LoadAvgLimit\_5__, __LoadAvgLimit\_15__ When Each minute's load-averages(1, 5, 15 min) is over this value, returning status code 503. __LoadAvgRetryAfter__ The second(s) that indicates how long the service is expected to be unavailable to browser. When this value exists, Retry-After field is automatically set. # AUTHOR Ryo Okamoto # SEE ALSO mod\_perl(3), Apache(3), getloadavg(3), uptime(1), RFC1945, RFC2616, mod\_loadavg # REPOSITORY https://github.com/ryochin/p5-apache-loadavglimit # AUTHOR Ryo Okamoto # COPYRIGHT & LICENSE Copyright (c) Ryo Okamoto, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.