Charlie Brady wrote:
Forkserver spawns and forks a bunch of qpsmtpd processes ahead of time
instead of the shell having to spawn a new perl process each time a
connection comes in.
Not quite - that's prefork :-)
Forkserver forks on every connection, but has the perl code pre-parsed
in memory which is a lot of the overhead when using tcpserver.
There's probably also a significant memory footprint difference between
n copies forked from a single ancestor versus n copies each execed
independently.
Perl is fairly horrible about keeping shared data pages shared because
it stores reference counts that change even when the values don't. And
the binary itself is shared text either way. There is probably still
some difference but not as much as you might expect.
--
Les Mikesell
[EMAIL PROTECTED]