On 2/25/06 5:50 PM, "John Peacock" <[EMAIL PROTECTED]> wrote:
> My understanding (and I will be corrected immediately if wrong) is that > Apache::Qpsmtpd merely replaces the tcpserver or forkerver part of the model, > i.e. the initial dispatch of the transaction. In other words, using > forkserver > or Apache::Qmsptmd should be completely comparable performance-wise once you > have accepted the next transaction. Apache::Qpsmtpd doesn't have any > [significant] effect on performance once the SMTP conversation has begun. The > trunk pollserver implementation should, but that isn't ready for production > use yet. There are a few things that behave a little differently like stderr ending up in apache's error_log and the detection of early chatters doesn't work in my config (a hybrid of 0.28 and some of my submissions that never got committed). It doesn't offer compelling enough value to change existing forkserver systems nor problems that keep it from rolling back to forkserver. Trixie, is a dell 1650 with a 1x1.4GHz and 512M RAM using the PERC. trixie# cat qpsmtpd.conf User smtpd Group users Listen 0.0.0.0:25 HostnameLookups On LoadModule perl_module lib/httpd/mod_perl.so <Perl> use lib qw( /home/smtpd/qpsmtpd/lib ); use Apache::Qpsmtpd; </Perl> <VirtualHost _default_:25> PerlSetVar QpsmtpdDir /home/smtpd/qpsmtpd PerlModule Apache::Qpsmtpd PerlProcessConnectionHandler Apache::Qpsmtpd </VirtualHost> trixie# zgrep -c Queued maillog.?.gz maillog.0.gz:2326 maillog.1.gz:2215 maillog.2.gz:2670 maillog.3.gz:2738 maillog.4.gz:2424 maillog.5.gz:2425 maillog.6.gz:1961 trixie# zgrep -c 'Connection from' maillog.?.gz maillog.0.gz:9144 maillog.1.gz:8600 maillog.2.gz:9721 maillog.3.gz:10922 maillog.4.gz:11709 maillog.5.gz:11590 maillog.6.gz:12457 trixie# uptime 7:14PM up 156 days, 21:20, 3 users, load averages: 2.67, 1.88, 1.29 trixie# uname -a NetBSD trixie 2.0.2_STABLE NetBSD 2.0.2_STABLE (GENERIC) #14: Tue Jul 19 20:38:53 CDT 2005 [EMAIL PROTECTED]:/builds/netbsd-2-0/i386/obj/builds/netbsd-2-0/src/sys/arch/i38 6/compile/GENERIC i386 trixie# swapctl -l Device 1K-blocks Used Avail Capacity Priority /dev/ld0b 1055968 104544 951424 10% 0 trixie# Note that I throttle the incoming connections with the 'loadcheck' plugin with the default value of 7. If the system load is over 7, I decline to service the client. I don't use apache's hooks to manage the load.
