[Date Prev][Date Next][Thread Prev][Thread Next][Minivend by date
][Minivend by thread
]
Re: mod_perl
Jeff Carnahan
>
> ****** message to minivend-users from "Jeff Carnahan" <tails@hooked.net> ******
>
> Actually, the great thing about MV is that it doesn't spawn a perl process
> for each request. It runs one main perl process that waits for requests from
> either vlink or tlink.
>
> Every time you hit the server with another request, you're actually
> launching the small tlink or vlink compiled C program, which then
> communicates with the perl-based daemon running in the background..
>
Yes, but minivend forks child servers to handle new requests.
Otherwise it could only handle one page at a time. If you have the
simple demo working, do this:
(from csh-like shell)
while (1)
> ps ax | grep vend | grep -v grep
> sleep 1
> echo ""
> end
Then enter the simple catalog through the 'Enter the stor' link on the
splash page. You will initially see (assuming this is an otherwise
idle test/demo server) one minivend server process. When you enter
you will see two and then three. The first is the parent server that
sits around waiting for connections (state S).
Then two children spawn. Why two, I don't know. Both begin in state
D and one goes to R later. Man sez D = uninterruptible sleep (usually
IO) and R = runnable. I don't understand this behavior. I think it
has to do with signals, but I don't really know.
Still, this sounds worse than it really is since fork() is pretty
efficient. It doesn't copy the whole image, it only copies the
environment and a few other variables. The bulk of the executable
image is only copied as needed if it is written to. My only point is
that MiniVend does indeed spawn a perl process for each hit. Its a
copy of the already loaded and running perl interpreter, not a cold
start of an entirely new server image.
> --
> Warmest Regards...
> __________________________________________________________________
> Jeff Carnahan CTO NetworQ, Inc.
> Online Internet Commerce jcarnahan@networq.com
> http://www.networq.com/ jeff@cyberscope.com
> __________________________________________________________________
>
> -----Original Message-----
> From: owner-minivend-users@minivend.com
> [mailto:owner-minivend-users@minivend.com]On Behalf Of Jay Austad
> Sent: Thursday, June 17, 1999 2:44 PM
> To: minivend-users@minivend.com
> Subject: mod_perl
>
>
> ****** message to minivend-users from Jay Austad <austad@fallon.com>
> ******
>
> I'm sure this has been mentioned before, but is there any way to make
> minivend use the apache mod_perl instead of spawning perl each time?
>
> I've got a dual P233 with 128MB ram, and if I run the apache benchmark
> program against minivend with 150 requests, 30 concurrent, it takes an
> average time of around 31 seconds to return each page. I recompiled perl
> with all sorts of optimizations also, and it only took about 1 second off
> the time. My entire site runs through minivend to preserve the
> functionality of it, and I fear that when this particular site gets posted
> to slashdot.org, and hardocp.com, 30 concurrent requests will be the minimum
> it's getting. My load average hits about 10.70 while it's trying to process
> these also. I guess I can do the static page option, but I don't want to do
> that for the entire site.
>
> Jay
> -
> To unsubscribe from the list, DO NOT REPLY to this message. Instead, send
> email with 'UNSUBSCRIBE minivend-users' in the body to
> Majordomo@minivend.com.
> Archive of past messages: http://www.minivend.com/minivend/minivend-list
>
>
> -
> To unsubscribe from the list, DO NOT REPLY to this message. Instead, send
> email with 'UNSUBSCRIBE minivend-users' in the body to Majordomo@minivend.com.
> Archive of past messages: http://www.minivend.com/minivend/minivend-list
>
--
John Edstrom | edstrom @ slugo.hmsc.orst.edu
http://bubo.hmsc.orst.edu/~edstrom
"Lurker" at BioMOO (bioinfo.weizmann.ac.il:8888)
Hatfield Marine Science Center
2030 S. Marine Science Drive
Newport, Oregon 97365-5296
wk: (541) 867 0197
fx: (541) 867 0138