On Tue, Sep 21, 2004 at 07:19:48PM +0100, Matt Sergeant wrote:
> On 19 Sep 2004, at 10:34, Matt Sergeant wrote:
> 
> >Last week I was at YAPC and attended mock's talk about building an 
> >SMTPd in mod_perl2/apache2. But before going I wanted to be able to 
> >build something like that for myself. So I wrote Apache:Qpsmtpd - a 
> >mod_perl2 handler that embeds Qpsmtpd (http://smtpd.develooper.com/)
> >
> >  http://www.sergeant.org/Apache-Qpsmtpd/
> >
> >It seems to mostly work, though if you want to play with it you'll 
> >need the current cvs of qpsmtpd. It's about 3 times faster than the 
> >qpsmtpd-forkserver that ships with qpsmtpd.
> 
> Someone posted privately asking why I thought it was faster, but my 
> reply to them bounced (broken anti-spam system I think) so I'll reply 
> here:
> 
> I think it's faster because it pre-forks. qpsmtpd-forkserver is just 
> naive - it forks once per connection. Plus I guess Apache does the I/O 
> for you, though I don't think that's really gaining me much - consider 
> the overheads of the bucket brigade vs Perl's readline.
> 
> Matt.
> 

I think there is the potential for an even better speed increase with a little
reworking of how QPSMTPD works.  Some of the stuff you're doing (the timeout
bits you showed me) might be better left to Apache to handle.  Also, you might
want to try it with the threading MPM vs the preforking.  Some OS's see a bit
of improvement.  Any idea where your bottleneck is?

mock

-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html

Reply via email to