Threading is possibly even worse on Windows. Any forking on Windows is
really Perl threading as Windows doesn't have fork() as its process model.
Are you using Randy Kobes' mod_perl for ActivePerl? I have not done that
configuration for a while, but I did get it working once. Your other
option is to compile your own Apache+mod_perl -- a bit of a challenge
but certainly possible, and quite likely to resolve the problem.
The problems arise because mod_perl has to plug the whole of Perl into
Apache. This requires Apache and Perl to be compiled in ways that are
partly compatible. mod_perl has some flexibility in this, but I always
found it pretty troublesome, and in any event, the Perl threads on
Windows will be within Apache processes. FastCGI allows you to move Perl
processes outside Apache, so they are wholly independent of each other,
and no longer require any binary compatibility.
The downside is that you don't memory sharing, which you get with
prefork, especially on platforms that have a proper process fork().
Unfortunately, Windows doesn't have that true fork(), so the memory
sharing is only working because you are working in a single (Windows)
process. Our Perl processes on Windows are not that big (they commonly
start at VM sizes of 50-60Mb, and only get larger when we start the
high-powered search systems we use). A decent server can easily
accommodate 40 or so of these.
Personally, on Windows, I'd stick with FastCGI. We've been using it for
a year or more and it has survived some fairly large scale stress testing.
--S
--
Stuart Watt
ARM Product Developer
Information Balance
Ascii King wrote:
Stuart Watt wrote:
"Free to wrong pool" is usually an issue with XS and threading.
Digest::SHA is an XS module. Which Perl are you using? And how is it
integrated into Apache?
I've generally found FastCGI to be safer on Windows, simply because
it doesn't require the tight integration of Perl into Apache under
Windows.
--S
--
Stuart Watt
ARM Product Developer
Information Balance
I have Perl v5.8.9 I suspected it was something to do with threads
only because I couldn't figure out how threading or the pre-fork stuff
was supposed to be set up on Windows. I thought I read though, that
the threading issue didn't matter on Windows.
I did have FastCGI working. I switched because the Catalyst Cookbook
recommended mod_perl. I'll try that again.
_______________________________________________
List: [email protected]
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive:
http://www.mail-archive.com/[email protected]/
Dev site: http://dev.catalyst.perl.org/
--
This message was scanned by ESVA and is believed to be clean.
Click here to report this message as spam.
http://antispam.infobal.com/cgi-bin/learn-msg.cgi?id=0E7092806D.D7113
_______________________________________________
List: [email protected]
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/[email protected]/
Dev site: http://dev.catalyst.perl.org/