[ic] mod_interchange and Apache MaxClients

John1 list_subscriber at yahoo.co.uk
Thu Nov 17 13:43:52 EST 2005


On Thursday, November 17, 2005 4:22 PM, rphipps at reliant-solutions.com wrote:

>> From: interchange-users-bounces at icdevgroup.org
>> [mailto:interchange-users- bounces at icdevgroup.org] On Behalf Of John1
>> Sent: Thursday, November 17, 2005 3:12 AM
>>
>> On Thursday, November 17, 2005 7:02 AM, rphipps at reliant-solutions.com
>> wrote:
>>
> <snip>
>>
>> ######## Snippet
>> my $browser = LWP::UserAgent->new;
>> $browser->timeout(30);
>>
>> my $count = 0;
>> my $up = 0;
>>
>> while ($count <= 4) {
>>         my $response = $browser->get($url);
>>         if ($response->content =~ m/UP/) {
>>                 $count = 5;
>>                 $up = 1;
>>         }
>>         $count++;
>> }
>> ##########
>>
>> Ron, does this code mean that it takes your script 2.5 minutes to
>> recognise
>> that the server is down (i.e. 5 x 30 seconds timeout?)  If so, would
>> it be better if we reduced the timeout to about 5 seconds.
>> Hopefully 5 tries with
>> a 5 second timeout shouldn't cause any false alarms?  That way we
>> will spot
>> the server going down quicker and the various system commands I have
>> suggested inserting may then give more useful information.  Perhaps
>> we can get away with less than a 5 second timeout - what do you
>> think?
>>
>> BTW, I have thise running via cron at a 1 minute interval - are you
>> doing the same?  Thanks
>>
>
> I actually only have mine go through 3 times to check, so 90 seconds
> to determine if it's down, running every minute in cron.  We probably
> could reduce the timeout value, however under a heavy load I wanted
> to give IC plenty of time to respond.  Not sure what the ideal values
> would be. Another idea would be to capture the results of those
> commands at the beginning of the script and then email them if the
> site is down, that way you get the output before you know if there is
> a problem.  Or reduce the timeout to something like 10-15 seconds,
> capture that output the first time you see the page is down so the
> data is only 1-15 seconds old.  I think I'll go for the second option.
>
> Thanks,
> -Ron
>
> Here's the new code:
>
> my $output = '';
>
> while ($count <= 4) {
>        my $response = $browser->get($url);
>        if ($response->content =~ m/UP/) {
>                $up = 1;
>                $count = 5;
>        } elsif ($output == '') {
>                $output = `$REPORT_COMMAND`;
>        }
>        $count++;
> }
>
> if ($up == 1) {
> } else {
>        system $IC_COMMAND;
>        mail_admin("IC483 restarted! $output");
>        print "IC483 restarted!";
> }
>
Thanks for the script modifications.  I think I will also reduce the timeout 
to 10 and the number of times it tries to 3 to try to catch the outage as 
soon as possible. 


		
___________________________________________________________ 
To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com


More information about the interchange-users mailing list