FastcgiStub does not raise a new process

Hi there.

we have a perl FCGI running with Sun ONE 6.1 sp5 over Solaris10.

We have a line in obj.conf like this:

<Object name="fcgi.perl">

Service fn="responder-fastcgi" app-path="/usr/bin/perl" app-args="/internet/datos/WWW/cgi-bin/loginCGI/loginCGI.pl" app-args="/inter

net/datos/WWW/cgi-bin/loginCGI" bind-path="localhost:27527" resp-timeout=10 restart-interval=30 min-procs=1 max-procs=10

</Object>

We are doing load test against our web app., and we can see that Fastcgistub does not start a new perl process when needed (and of couerse, we fail in process too many request). Instead of that, when our perl dies due to a SIGPIPE signal, we can see this message in fastcgitub.log, repeated a lot of times:

server bind error

....

....

/usr/bin/perl bound to localhost:27527 is already running

....

...

Could you help us with this issue, please?

Thanks a lot in advance.

Best Regards

[1001 byte] By [amesoneroa] at [2007-11-27 3:51:26]
# 1

In my test setup :

<Object name="fcgi.perl">

Service fn="responder-fastcgi" app-path="/opt/csw/bin/perl" app-args="/tmp/one.pl" bind-path="localhost:27527" resp-timeout=10 restart-interval=30 min-procs=2 max-procs=10

</Object>

If I overload the CPU using

$ ab -n 100000 -c 100 http://host:port/fcgiperl/

I am able to saturate the CPU. Even if I print a sleep statement in while loop

of /tmp/one.pl then too, I don't get the error you mentioned.

I however observed that Fastcgistub doesn't create the new processes.

Can you test the following script in your test environment to see how

it performs?

/tmp/one.pl --

#!/usr/bin/perl

use IO::File;

#use strict;

use CGI::Fast qw(:standard);

$COUNTER = 0;

while (new CGI::Fast) {

print header;

print start_html("Fast CGI Rocks");

print

h1("Fast CGI Rocks"),

"Invocation number ",b($COUNTER++),

" PID ",b($$),".",

hr;

print end_html;

}

--

Basantka at 2007-7-12 8:55:25 > top of Java-index,Web & Directory Servers,Web Servers...