Re: Performance / Tuning questions

2007-08-17 Thread Peter J. Holzer
On 2007-08-16 18:45:08 -0500, Peter A Eisch wrote:
> On Thu, 16 Aug 2007, Charlie Brady wrote:
> > On Thu, 16 Aug 2007, Peter Eisch wrote:
> >
> > > 
> As I noted, forkserver was hit or miss without some safeguard to catch
> when it tanked.  And it did.

Early versions of forkserver died if a child died at an inopportune
moment. That was fixed quite a long time ago and I think it was only a
problem with perl 5.6 (save signals in 5.8 should have taken care of
this). Other than that I don't remember any case where the parent
process of forkserver died.



> > > I have apache running on these systems already for other reasons ...
> >
> > Not everyone does. But your reasons for preferring one start script to
> > another are beside the point. I'm merely trying to discover the details
> > and the basis of assertions about performance.
> >
> 
> The assertion about performance is that can get "Plugins already loaded"
> 150 times or so per child (just looking at one child in the live logs
> now).

If that is supposed to be an argument why apache must be faster than
forkserver, I don't follow it.  I don't get this message at all with
forkserver (and since its at LOGWARN level, I should see it if it
happens). I dimly recall that with some old version I did get it
reliably once per child, because load_plugins was called a second time
just after the fork - I don't remember when this was fixed.


> > > As to the overall efficiency and speed, I'd really figure that -async can
> > > lay a beat-down on anything that doesn't select() socket arrays.
> >
> > That's speculation, not benchmarking.
> >
> 
> No, kind sir.  Systems (W. Richard Stevens era) and kernel scheduler
> programmers understand this.

There is a difference between potential performance and actual
performance. Just because a select-based state-machine is potentially
faster, doesn't mean it is measurably faster in the real world. There
are too many other variables involved.

So I agree with Charlie here. Arguing that something must be faster
because it uses select is just speculation. If you want a real
comparison, you need to benchmark it. Of course with benchmarks, you
have to problem that you need a realistic workload, and with qpsmtpd you
probably won't find two installations which use the same plugins, so
results probably cannot be generalized.

Metrics I think are relevant:

> Maybe you have some specific metrics you'd like for me to gather?

* Processed connections per time unit.

* Accepted messages per time unit.

* Latency for accepted messages.

* System load (for a given workload)

* Memory usage (for a given workload)

A change in these metrics when switching from one method to another on
the same machine is probably a good indicator for a given set of plugins
and a given workload. 

I don't think any set of metrics is comparable between different systems
and different workloads. A synthetic workload might be useful, though.

hp


-- 
   _  | Peter J. Holzer| I know I'd be respectful of a pirate 
|_|_) | Sysadmin WSR   | with an emu on his shoulder.
| |   | [EMAIL PROTECTED] |
__/   | http://www.hjp.at/ |-- Sam in "Freefall"


signature.asc
Description: Digital signature


Re: Performance / Tuning questions

2007-08-17 Thread Charlie Brady


On Thu, 16 Aug 2007, Peter Eisch wrote:

DJB tools carry the restriction that modified source and binaries may 
not be distributed.


I don't recall seeing anyone wishing to modify tcpserver.

Peter, as DJB's license conditions bother you, if you like the design 
concepts of tcpserver and supervise, then use ipsvd and runit, which do 
the same job, but have a license more to your liking.


I'm still curious to know exactly what performance differences there are 
between forkserver and an apache/mod_perl based framework. [Peter, please 
allow others to answer.]


Re: Performance / Tuning questions

2007-08-16 Thread Peter Eisch

Yes, we're far afield with this, but daemontools has the restriction that it
cannot be redistributed as how I build my systems.  I'm not going to add
feature-creep by requiring a development environment it.  DJB tools carry
the restriction that modified source and binaries may not be distributed.

peter



Re: Performance / Tuning questions

2007-08-16 Thread Matt Sergeant

On 16-Aug-07, at 8:32 PM, Guy Hulbert wrote:


On Thu, 2007-08-16 at 18:45 -0500, Peter A Eisch wrote:

That's BS. Anyone is free to download tcpserver without any
acknowledgements. If you don't like the ucspi-tcp license you can

use

ipsvd.



Check out http://pkgsrc.org/ and try and install tcpserver without
jumping
through hoops of license agreements.


Why not just get it from the original author at cr.yp.to ?

I don't see how the jokers at 'pkgsrc' can impose further restrictions
on something they did not write.


Can we not let this list diverge into a massive licensing war please?  
End this thread.


Matt.



Re: Performance / Tuning questions

2007-08-16 Thread Guy Hulbert
On Thu, 2007-08-16 at 18:45 -0500, Peter A Eisch wrote:
> > That's BS. Anyone is free to download tcpserver without any
> > acknowledgements. If you don't like the ucspi-tcp license you can
> use
> > ipsvd.

> Check out http://pkgsrc.org/ and try and install tcpserver without
> jumping
> through hoops of license agreements.

Why not just get it from the original author at cr.yp.to ?

I don't see how the jokers at 'pkgsrc' can impose further restrictions
on something they did not write.

-- 
--gh




Re: Performance / Tuning questions

2007-08-16 Thread Peter A Eisch
On Thu, 16 Aug 2007, Charlie Brady wrote:
> On Thu, 16 Aug 2007, Peter Eisch wrote:
>
> > ... and I have to go through some hoops to get it on there that include
> > some various acknowledgements to the author.
>
> That's BS. Anyone is free to download tcpserver without any
> acknowledgements. If you don't like the ucspi-tcp license you can use
> ipsvd.
>
> But this is by the by, since forkserver doesn't use tcpserver.
>
> I think you mean to refer to supervise. If you don't like supervise's
> license, use runit. If you don't like supervise/runit, start forkserver
> from inittab.
>

Check out http://pkgsrc.org/ and try and install tcpserver without jumping
through hoops of license agreements.

As I noted, forkserver was hit or miss without some safeguard to catch
when it tanked.  And it did.

> > Then with forkserver I had to jump through some hoops to set up ulimit
> > properly ...
>
> If ulimit bothers you, don't use it.
>

...and... I don't.

> > I have apache running on these systems already for other reasons ...
>
> Not everyone does. But your reasons for preferring one start script to
> another are beside the point. I'm merely trying to discover the details
> and the basis of assertions about performance.
>

The assertion about performance is that can get "Plugins already loaded"
150 times or so per child (just looking at one child in the live logs
now).

Maybe you have some specific metrics you'd like for me to gather?

> > As to the overall efficiency and speed, I'd really figure that -async can
> > lay a beat-down on anything that doesn't select() socket arrays.
>
> That's speculation, not benchmarking.
>

No, kind sir.  Systems (W. Richard Stevens era) and kernel scheduler
programmers understand this.






Re: Performance / Tuning questions

2007-08-16 Thread Charlie Brady


On Thu, 16 Aug 2007, Peter Eisch wrote:

... and I have to go through some hoops to get it on there that include 
some various acknowledgements to the author.


That's BS. Anyone is free to download tcpserver without any 
acknowledgements. If you don't like the ucspi-tcp license you can use 
ipsvd.


But this is by the by, since forkserver doesn't use tcpserver.

I think you mean to refer to supervise. If you don't like supervise's 
license, use runit. If you don't like supervise/runit, start forkserver 
from inittab.


Then with forkserver I had to jump through some hoops to set up ulimit 
properly ...


If ulimit bothers you, don't use it.


I have apache running on these systems already for other reasons ...


Not everyone does. But your reasons for preferring one start script to 
another are beside the point. I'm merely trying to discover the details 
and the basis of assertions about performance.



As to the overall efficiency and speed, I'd really figure that -async can
lay a beat-down on anything that doesn't select() socket arrays.


That's speculation, not benchmarking.


Re: Performance / Tuning questions

2007-08-16 Thread Ed McLain
I actually run forkserver, now prefork, under daemon (
http://libslack.org/daemon/) which handles all of the logging to syslog, or
file, and restarting the process if it fails.  Works great on our boxes and
is much easier to run than tcpserver or svscan.  I use:
/usr/bin/daemon --chdir=/home/smtpd/qpsmtpd/ -N --name=qpsmtpd-daemon \
--pidfiles=/var/run --respawn --stdout=mail.warning --stderr=mail.warning \
-- ./qpsmtpd-prefork

To start prefork for instance.

Speaking of which, I've now moved all of our servers to the 0.40 prefork and
haven't had a problem yet once I got my plugins tuned right.  Looking at
moving to async but I'm still confused as to what all is required, or I
guess I should say recommended, in rewriting plugins to be async.  I'm a
learn-by-example type of guy so any examples for say the spamassassin plugin
or maybe clamdscan would help me out a lot.  Once I've got the how to do it
down I'd be more than willing to convert a lot of them over and post them
back on the list or on my site.


On 8/16/07 3:09 PM, "Peter Eisch" <[EMAIL PROTECTED]> wrote:

> 
> On 8/16/07 1:45 PM, "Charlie Brady" <[EMAIL PROTECTED]>
> wrote:
> 
>> 
>> On Wed, 15 Aug 2007, Joe Schaefer wrote:
>> 
>>> [EMAIL PROTECTED] (Charlie Brady) writes:
>>> 
 AFAICT, nobody has ever said what constitutes 'faster', or what
 performance testing has been done forkserver v Apache::Qpsmtpd.
>>> 
>>> When SMTP transactions are measured in seconds, "faster" really
>>> doesn't matter unless you're talking about how quickly you can
>>> fail a bad connection.  The big win with Apache::Qpsmtpd over
>>> forkserver at Apache, IIRC, was in measuring the ratio of forks
>>> to connections.  With forkserver, the ratio is 1-1, whereas
>>> with Apache::Qpsmptd it's configurable within httpd, and for
>>> apache is on the order of 1 fork per 5000 connections.
>> 
>> Is there evidence that the forks (and subsequent COW) have a significant
>> effect on latency - i.e. how quickly you can fail a bad connection?
>> 
> 
> 
> 
> I don't have tcpserver available on my OS natively and I have to go through
> some hoops to get it on there that include some various acknowledgements to
> the author.  Forkserver worked fine for me until it would just fade away.
> (That was under 0.28, to be fair.)  Then with forkserver I had to jump
> through some hoops to set up ulimit properly and if a peon didn't restart it
> properly, things would just fall apart.
> 
> I have apache running on these systems already for other reasons (mostly
> admin & monitoring) so moving to Apache::Qpsmtpd was really a natural fit.
> I like that I can set up each of the 'listeners' in separate conf files
> specifying the IP and ports to my pleasure.
> 
> As to the overall efficiency and speed, I'd really figure that -async can
> lay a beat-down on anything that doesn't select() socket arrays.
> 
> With all that said, I rely on syslog for any events that get written to
> disk, so I may not be the right person to ask about this stuff.  (Though I'm
> close to logging solely to sql.  )
> 
> 
> 
> peter
> 
> 

-- 
Ed McLain



Re: Performance / Tuning questions

2007-08-16 Thread Peter Eisch

On 8/16/07 1:45 PM, "Charlie Brady" <[EMAIL PROTECTED]>
wrote:

> 
> On Wed, 15 Aug 2007, Joe Schaefer wrote:
> 
>> [EMAIL PROTECTED] (Charlie Brady) writes:
>> 
>>> AFAICT, nobody has ever said what constitutes 'faster', or what
>>> performance testing has been done forkserver v Apache::Qpsmtpd.
>> 
>> When SMTP transactions are measured in seconds, "faster" really
>> doesn't matter unless you're talking about how quickly you can
>> fail a bad connection.  The big win with Apache::Qpsmtpd over
>> forkserver at Apache, IIRC, was in measuring the ratio of forks
>> to connections.  With forkserver, the ratio is 1-1, whereas
>> with Apache::Qpsmptd it's configurable within httpd, and for
>> apache is on the order of 1 fork per 5000 connections.
> 
> Is there evidence that the forks (and subsequent COW) have a significant
> effect on latency - i.e. how quickly you can fail a bad connection?
> 



I don't have tcpserver available on my OS natively and I have to go through
some hoops to get it on there that include some various acknowledgements to
the author.  Forkserver worked fine for me until it would just fade away.
(That was under 0.28, to be fair.)  Then with forkserver I had to jump
through some hoops to set up ulimit properly and if a peon didn't restart it
properly, things would just fall apart.

I have apache running on these systems already for other reasons (mostly
admin & monitoring) so moving to Apache::Qpsmtpd was really a natural fit.
I like that I can set up each of the 'listeners' in separate conf files
specifying the IP and ports to my pleasure.

As to the overall efficiency and speed, I'd really figure that -async can
lay a beat-down on anything that doesn't select() socket arrays.

With all that said, I rely on syslog for any events that get written to
disk, so I may not be the right person to ask about this stuff.  (Though I'm
close to logging solely to sql.  )



peter




Re: Performance / Tuning questions

2007-08-16 Thread Charlie Brady


On Wed, 15 Aug 2007, Joe Schaefer wrote:


[EMAIL PROTECTED] (Charlie Brady) writes:


AFAICT, nobody has ever said what constitutes 'faster', or what
performance testing has been done forkserver v Apache::Qpsmtpd.


When SMTP transactions are measured in seconds, "faster" really
doesn't matter unless you're talking about how quickly you can
fail a bad connection.  The big win with Apache::Qpsmtpd over
forkserver at Apache, IIRC, was in measuring the ratio of forks
to connections.  With forkserver, the ratio is 1-1, whereas
with Apache::Qpsmptd it's configurable within httpd, and for
apache is on the order of 1 fork per 5000 connections.


Is there evidence that the forks (and subsequent COW) have a significant 
effect on latency - i.e. how quickly you can fail a bad connection?




Re: Performance / Tuning questions

2007-08-16 Thread Peter J. Holzer
On 2007-08-15 20:27:24 -0400, Matt Sergeant wrote:
> On 15-Aug-07, at 7:08 PM, Ed McLain wrote:
> >IS there any documentation anywhere on how and what needs to be
> >changed?  I've looked on the wiki and don't see anything on there
> >about it.   As an aside, I'll dig through the dnsbl plugin for async
> >and see what I  can come up with.  Any information would be very
> >helpful though.
> 
> There isn't much documentation on it unfortunately.
> 
> The big problem tends to be in the queue plugins as they do I/O - so  
> for example in the postfix-queue plugin it opens a UNIX domain socket  
> to the postfix queue daemon and squirts the message down that socket.  
> All the time it is doing that, qpsmtpd-async could be processing  
> other connections, but because it's not written in an async manner it  
> can't.

Good catch. I've been thinking of switching to -async (we have only ~50k
connections per day on average, but it's very uneven, so the configured
limit of 50 concurrent connections gets reached every now and then and I
don't think I want to raise that any further), so that would be one of
the plugins I'd have to rewrite (and one which I didn't think of,
although in our case it probably isn't a bottleneck).

hp


-- 
   _  | Peter J. Holzer| I know I'd be respectful of a pirate 
|_|_) | Sysadmin WSR   | with an emu on his shoulder.
| |   | [EMAIL PROTECTED] |
__/   | http://www.hjp.at/ |-- Sam in "Freefall"


signature.asc
Description: Digital signature


Re: Performance / Tuning questions

2007-08-16 Thread Peter J. Holzer
On 2007-08-15 23:45:14 +0200, Stefan Priebe wrote:
> But would be more luckier, if yome of the devolopers seem to care. Cause 
> qpsmtpd is a real great program i think... and it should be stable in a 
> new release and not that  buggy as it is... i think this is really sad / 
> bad or whatever.

I just added a link to the issue tracker
(http://code.google.com/p/smtpd/issues/list) to the wiki. It might be a
good idea to add all open issues there even if they have been discussed
on the mailing list, just so they aren't forgotten.

hp

-- 
   _  | Peter J. Holzer| I know I'd be respectful of a pirate 
|_|_) | Sysadmin WSR   | with an emu on his shoulder.
| |   | [EMAIL PROTECTED] |
__/   | http://www.hjp.at/ |-- Sam in "Freefall"


signature.asc
Description: Digital signature


Re: Performance / Tuning questions

2007-08-15 Thread Ed McLain
Hrmm.. I tried several different setups and configurations, rebuilding
apache to support the different forking methods.  It was so long ago though
that I don't honestly remember which ones worked better or worse.


On 8/15/07 9:10 PM, "Peter Eisch" <[EMAIL PROTECTED]> wrote:

> 
> I don't see the behavior you describe.
> 
> 
> StartServers 5
> MinSpareServers  5
> MaxSpareServers 10
> MaxClients 150
> MaxRequestsPerChild  0
> 
> 
> Child churn happens as a product of load over time, typically better than
> 1:1.
> 
> peter
> 
> On 8/15/07 6:17 PM, "Ed McLain" <[EMAIL PROTECTED]> wrote:
> 
>> The problems I saw with Apache:Qpsmtpd were that the connections would get
>> battered over each other.  Basically, spammer connects and gets blacklisted,
>> server drops the connection and takes a new one, new connections issues a
>> HELO and server responds back with a 50x error message.  The only way to fix
>> this was to set the forking at a 1-1 rate, which just wasn't good obviously.
>> Never had that problem with forkserver.
> 

-- 
Ed McLain
Sr. Data Center Engineer
TekLinks, Inc.
205.314.6634
[EMAIL PROTECTED]



Re: Performance / Tuning questions

2007-08-15 Thread Peter Eisch

I don't see the behavior you describe.


StartServers 5
MinSpareServers  5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild  0


Child churn happens as a product of load over time, typically better than
1:1.

peter

On 8/15/07 6:17 PM, "Ed McLain" <[EMAIL PROTECTED]> wrote:

> The problems I saw with Apache:Qpsmtpd were that the connections would get
> battered over each other.  Basically, spammer connects and gets blacklisted,
> server drops the connection and takes a new one, new connections issues a
> HELO and server responds back with a 50x error message.  The only way to fix
> this was to set the forking at a 1-1 rate, which just wasn't good obviously.
> Never had that problem with forkserver.



Re: Performance / Tuning questions

2007-08-15 Thread Matt Sergeant

On 15-Aug-07, at 7:08 PM, Ed McLain wrote:

IS there any documentation anywhere on how and what needs to be  
changed?
I've looked on the wiki and don't see anything on there about it.   
As an
aside, I'll dig through the dnsbl plugin for async and see what I  
can come

up with.  Any information would be very helpful though.


There isn't much documentation on it unfortunately.

The big problem tends to be in the queue plugins as they do I/O - so  
for example in the postfix-queue plugin it opens a UNIX domain socket  
to the postfix queue daemon and squirts the message down that socket.  
All the time it is doing that, qpsmtpd-async could be processing  
other connections, but because it's not written in an async manner it  
can't.


All you really need to do is create a subclass of Danga::Socket that  
does the same stuff Qpsmtpd::Postfix does, have the plugin return  
YIELD, and when the sending to postfix is complete run $qpsmtpd- 
>run_transaction to finish up.


I'm probably making it sound a bit simpler than it is, but all I mean  
is it's not a whole lot of work. If I had a postfix installation it'd  
be an afternoon's effort (but I don't have access to one).


Matt


Re: Performance / Tuning questions

2007-08-15 Thread Joe Schaefer
[EMAIL PROTECTED] (Ed McLain) writes:

> The problems I saw with Apache:Qpsmtpd were that the connections would
> get battered over each other.  Basically, spammer connects and gets
> blacklisted, server drops the connection and takes a new one, new
> connections issues a HELO and server responds back with a 50x error
> message.

Which (httpd) MPM were you running?  I wouldn't recommend anything
other than prefork in production.

-- 
Joe Schaefer


Re: Performance / Tuning questions

2007-08-15 Thread Ed McLain
The problems I saw with Apache:Qpsmtpd were that the connections would get
battered over each other.  Basically, spammer connects and gets blacklisted,
server drops the connection and takes a new one, new connections issues a
HELO and server responds back with a 50x error message.  The only way to fix
this was to set the forking at a 1-1 rate, which just wasn't good obviously.
Never had that problem with forkserver.


On 8/15/07 6:14 PM, "Joe Schaefer" <[EMAIL PROTECTED]> wrote:

> [EMAIL PROTECTED] (Charlie Brady) writes:
> 
>> AFAICT, nobody has ever said what constitutes 'faster', or what
>> performance testing has been done forkserver v Apache::Qpsmtpd.
> 
> When SMTP transactions are measured in seconds, "faster" really
> doesn't matter unless you're talking about how quickly you can
> fail a bad connection.  The big win with Apache::Qpsmtpd over
> forkserver at Apache, IIRC, was in measuring the ratio of forks
> to connections.  With forkserver, the ratio is 1-1, whereas
> with Apache::Qpsmptd it's configurable within httpd, and for
> apache is on the order of 1 fork per 5000 connections.

-- 
Ed McLain
Sr. Data Center Engineer
TekLinks, Inc.
205.314.6634
[EMAIL PROTECTED]



Re: Performance / Tuning questions

2007-08-15 Thread Joe Schaefer
[EMAIL PROTECTED] (Charlie Brady) writes:

> AFAICT, nobody has ever said what constitutes 'faster', or what
> performance testing has been done forkserver v Apache::Qpsmtpd.

When SMTP transactions are measured in seconds, "faster" really
doesn't matter unless you're talking about how quickly you can
fail a bad connection.  The big win with Apache::Qpsmtpd over
forkserver at Apache, IIRC, was in measuring the ratio of forks
to connections.  With forkserver, the ratio is 1-1, whereas
with Apache::Qpsmptd it's configurable within httpd, and for
apache is on the order of 1 fork per 5000 connections.

-- 
Joe Schaefer


Re: Performance / Tuning questions

2007-08-15 Thread Ed McLain
IS there any documentation anywhere on how and what needs to be changed?
I've looked on the wiki and don't see anything on there about it.  As an
aside, I'll dig through the dnsbl plugin for async and see what I can come
up with.  Any information would be very helpful though.


On 8/15/07 6:05 PM, "Fred Moyer" <[EMAIL PROTECTED]> wrote:

>>> Ed McLain schrieb:
 I'm all for any changes you have.  I found most, I think, of the issues on
 our beta system had to do with some of the plugins, not sure though.. If
 you
 have any patches though I'd be open to trying to them out.  I gotta do
 something.  We currently have 8 3Ghz ( single cpu/dual core) boxes with 2GB
 of ram running 18-25 connections per second.  With prefork I can steadily
 maintain 20 with a load average of 2, w00t.
> 
> If you are running that many boxes you might want to look at creating
> event based versions of your custom plugins and running the async server
> (Brad and Matt can evangelize that more than I).
> 
> We were running upwards of 50 servers at my work that processed incoming
> mail, and I made a strong push for running qpsmtpd async there which
> unfortunately wasn't adopted for non-technical reasons :(

-- 
Ed McLain
Sr. Data Center Engineer
TekLinks, Inc.
205.314.6634
[EMAIL PROTECTED]



Re: Performance / Tuning questions

2007-08-15 Thread Fred Moyer

Ed McLain schrieb:

I'm all for any changes you have.  I found most, I think, of the issues on
our beta system had to do with some of the plugins, not sure though.. If you
have any patches though I'd be open to trying to them out.  I gotta do
something.  We currently have 8 3Ghz ( single cpu/dual core) boxes with 2GB
of ram running 18-25 connections per second.  With prefork I can steadily
maintain 20 with a load average of 2, w00t.


If you are running that many boxes you might want to look at creating 
event based versions of your custom plugins and running the async server 
(Brad and Matt can evangelize that more than I).


We were running upwards of 50 servers at my work that processed incoming 
mail, and I made a strong push for running qpsmtpd async there which 
unfortunately wasn't adopted for non-technical reasons :(


Re: Performance / Tuning questions

2007-08-15 Thread Matt Sergeant

On 15-Aug-07, at 5:39 PM, Ed McLain wrote:

I'm all for any changes you have.  I found most, I think, of the  
issues on
our beta system had to do with some of the plugins, not sure  
though.. If you

have any patches though I'd be open to trying to them out.  I gotta do
something.  We currently have 8 3Ghz ( single cpu/dual core) boxes  
with 2GB
of ram running 18-25 connections per second.  With prefork I can  
steadily

maintain 20 with a load average of 2, w00t.


That's a pretty heafty setup. Async should be able to cope better,  
but it depends what you're doing in the plugins - you may need to  
write your own queue plugin for example.


Feel free to email me off list if you wanna chat about it offline.

Matt.





Re: Performance / Tuning questions

2007-08-15 Thread Matt Sergeant

On 15-Aug-07, at 5:35 PM, Stefan Priebe wrote:

But be careful - the 0.40 preforkserver version has MANY MANY  
BUGS!!! We tried to use it for about 500 servers with over 10 000  
connections / 10 minutes - and it wasn't useable at all.


We've now changed many lines - in the code and it works well. I've  
already posts some messages to the list but nobody seems to care -  
so ...


Honestly we do care, we just lack tuits. And people tend to work on  
stuff that's broken for them.


Send me your updated qpsmtpd-prefork and I'll patch it in (save me  
digging patches out of the list).


Matt.



Re: Performance / Tuning questions

2007-08-15 Thread Ed McLain
I don't think the problem is that they don't care, I think the problem is
that the patches get implemented into SVN but the there is no "feature" lock
to the svn code for the bugs to get worked out on the base and with so many
options finding all of the bugs is just a pain waiting to happen.  Having a
lot of different ways to run qpsmtpd is nice, but IMHO, having less options
that are more stable and robust would be preferred.

One other thing I'd like to add is that big groups like apache.org are
running qpsmtpd, it would be nice to know how they have it setup, what
patches they have applied, and all that so that the rest of us can get our
setups working better and push qpsmtpd as a rock solid, spam fighting,
performance oriented solution.  Just my .02.


On 8/15/07 4:45 PM, "Stefan Priebe" <[EMAIL PROTECTED]> wrote:

> I'm on holiday at the moment. I will send you them - when i'm back in 2
> weeks.
> 
> But would be more luckier, if yome of the devolopers seem to care. Cause
> qpsmtpd is a real great program i think... and it should be stable in a
> new release and not that  buggy as it is... i think this is really sad /
> bad or whatever.
> 
> Stefan
> 
> Ed McLain schrieb:
>> I'm all for any changes you have.  I found most, I think, of the issues on
>> our beta system had to do with some of the plugins, not sure though.. If you
>> have any patches though I'd be open to trying to them out.  I gotta do
>> something.  We currently have 8 3Ghz ( single cpu/dual core) boxes with 2GB
>> of ram running 18-25 connections per second.  With prefork I can steadily
>> maintain 20 with a load average of 2, w00t.
>> 
>> 
>> On 8/15/07 4:35 PM, "Stefan Priebe" <[EMAIL PROTECTED]> wrote:
>> 
>>> Hello!
>>> 
>>> But be careful - the 0.40 preforkserver version has MANY MANY BUGS!!! We
>>> tried to use it for about 500 servers with over 10 000 connections / 10
>>> minutes - and it wasn't useable at all.
>>> 
>>> We've now changed many lines - in the code and it works well. I've
>>> already posts some messages to the list but nobody seems to care - so ...
>>> 
>>> Stefan
>>> 
>>> Fred Moyer schrieb:
 Ed McLain wrote:
> I actually did a full testing of qpsmtpd-apache vs forkserver when I
> first
> started building this cluster and the apache version just had way to much
> overhead.  Basically it couldn't handle the connections per second we
> were
> throwing it.  I asked the list for some help at that time, as I was
> thinking
> my config could be off, but never really got any.  I've got a test box
> going
> with 0.40 and the pre-fork server now and it seems much better.
 Oh cool, good to know.  I looked through the changes for 0.40 and didn't
 make the distinction between forkserver and pre-fork server until I read
 your response.  Time for me to upgrade to 0.40!
>> 
> 

-- 
Ed McLain



Re: Performance / Tuning questions

2007-08-15 Thread Charlie Brady


On Wed, 15 Aug 2007, Fred Moyer wrote:

Maybe take Apache::Qpsmtpd for a spin.  Anecdotal evidence suggests that it 
is faster than forkserver [1], and it is a fairly simple install. Apache.org 
is using it and processes quite a bit of mail.


[1]
http://osdir.com/ml/mail.qpsmtpd/2006-04/msg00035.html


AFAICT, nobody has ever said what constitutes 'faster', or what 
performance testing has been done forkserver v Apache::Qpsmtpd.


Re: Performance / Tuning questions

2007-08-15 Thread Stefan Priebe
I'm on holiday at the moment. I will send you them - when i'm back in 2 
weeks.


But would be more luckier, if yome of the devolopers seem to care. Cause 
qpsmtpd is a real great program i think... and it should be stable in a 
new release and not that  buggy as it is... i think this is really sad / 
bad or whatever.


Stefan

Ed McLain schrieb:

I'm all for any changes you have.  I found most, I think, of the issues on
our beta system had to do with some of the plugins, not sure though.. If you
have any patches though I'd be open to trying to them out.  I gotta do
something.  We currently have 8 3Ghz ( single cpu/dual core) boxes with 2GB
of ram running 18-25 connections per second.  With prefork I can steadily
maintain 20 with a load average of 2, w00t.


On 8/15/07 4:35 PM, "Stefan Priebe" <[EMAIL PROTECTED]> wrote:


Hello!

But be careful - the 0.40 preforkserver version has MANY MANY BUGS!!! We
tried to use it for about 500 servers with over 10 000 connections / 10
minutes - and it wasn't useable at all.

We've now changed many lines - in the code and it works well. I've
already posts some messages to the list but nobody seems to care - so ...

Stefan

Fred Moyer schrieb:

Ed McLain wrote:

I actually did a full testing of qpsmtpd-apache vs forkserver when I
first
started building this cluster and the apache version just had way to much
overhead.  Basically it couldn't handle the connections per second we
were
throwing it.  I asked the list for some help at that time, as I was
thinking
my config could be off, but never really got any.  I've got a test box
going
with 0.40 and the pre-fork server now and it seems much better.

Oh cool, good to know.  I looked through the changes for 0.40 and didn't
make the distinction between forkserver and pre-fork server until I read
your response.  Time for me to upgrade to 0.40!






Re: Performance / Tuning questions

2007-08-15 Thread Ed McLain
I'm all for any changes you have.  I found most, I think, of the issues on
our beta system had to do with some of the plugins, not sure though.. If you
have any patches though I'd be open to trying to them out.  I gotta do
something.  We currently have 8 3Ghz ( single cpu/dual core) boxes with 2GB
of ram running 18-25 connections per second.  With prefork I can steadily
maintain 20 with a load average of 2, w00t.


On 8/15/07 4:35 PM, "Stefan Priebe" <[EMAIL PROTECTED]> wrote:

> Hello!
> 
> But be careful - the 0.40 preforkserver version has MANY MANY BUGS!!! We
> tried to use it for about 500 servers with over 10 000 connections / 10
> minutes - and it wasn't useable at all.
> 
> We've now changed many lines - in the code and it works well. I've
> already posts some messages to the list but nobody seems to care - so ...
> 
> Stefan
> 
> Fred Moyer schrieb:
>> Ed McLain wrote:
>>> I actually did a full testing of qpsmtpd-apache vs forkserver when I
>>> first
>>> started building this cluster and the apache version just had way to much
>>> overhead.  Basically it couldn't handle the connections per second we
>>> were
>>> throwing it.  I asked the list for some help at that time, as I was
>>> thinking
>>> my config could be off, but never really got any.  I've got a test box
>>> going
>>> with 0.40 and the pre-fork server now and it seems much better.
>> 
>> Oh cool, good to know.  I looked through the changes for 0.40 and didn't
>> make the distinction between forkserver and pre-fork server until I read
>> your response.  Time for me to upgrade to 0.40!
> 

-- 
Ed McLain
Sr. Data Center Engineer
TekLinks, Inc.
205.314.6634
[EMAIL PROTECTED]



Re: Performance / Tuning questions

2007-08-15 Thread Stefan Priebe

Hello!

But be careful - the 0.40 preforkserver version has MANY MANY BUGS!!! We 
tried to use it for about 500 servers with over 10 000 connections / 10 
minutes - and it wasn't useable at all.


We've now changed many lines - in the code and it works well. I've 
already posts some messages to the list but nobody seems to care - so ...


Stefan

Fred Moyer schrieb:

Ed McLain wrote:
I actually did a full testing of qpsmtpd-apache vs forkserver when I 
first

started building this cluster and the apache version just had way to much
overhead.  Basically it couldn't handle the connections per second we 
were
throwing it.  I asked the list for some help at that time, as I was 
thinking
my config could be off, but never really got any.  I've got a test box 
going

with 0.40 and the pre-fork server now and it seems much better.


Oh cool, good to know.  I looked through the changes for 0.40 and didn't 
make the distinction between forkserver and pre-fork server until I read 
your response.  Time for me to upgrade to 0.40!




Re: Performance / Tuning questions

2007-08-15 Thread Fred Moyer

Ed McLain wrote:

I actually did a full testing of qpsmtpd-apache vs forkserver when I first
started building this cluster and the apache version just had way to much
overhead.  Basically it couldn't handle the connections per second we were
throwing it.  I asked the list for some help at that time, as I was thinking
my config could be off, but never really got any.  I've got a test box going
with 0.40 and the pre-fork server now and it seems much better.


Oh cool, good to know.  I looked through the changes for 0.40 and didn't 
make the distinction between forkserver and pre-fork server until I read 
your response.  Time for me to upgrade to 0.40!


Re: Performance / Tuning questions

2007-08-15 Thread Ed McLain
I actually did a full testing of qpsmtpd-apache vs forkserver when I first
started building this cluster and the apache version just had way to much
overhead.  Basically it couldn't handle the connections per second we were
throwing it.  I asked the list for some help at that time, as I was thinking
my config could be off, but never really got any.  I've got a test box going
with 0.40 and the pre-fork server now and it seems much better.


On 8/15/07 2:40 PM, "Fred Moyer" <[EMAIL PROTECTED]> wrote:

> Ed McLain wrote:
>> Hello all,
>> Got a quick question for all those out there running large setups using
>> qpsmtpd.  We currently have a setup which is load balanced across an several
>> qpsmtpd servers running a custom linux distro that basically runs the entire
>> setup in ram for maximum performance.  Until lately the setup has been
>> running absolutely wonderful but with all these spam bots running around
>> I've started noticing some odd issues and I'm about to start pulling my hair
>> out.  I've tweaked and tweaked the sysctl vars for the network interfaces,
>> disabled rdns, and also removed almost all of our plugins in an attempt to
>> keep the machines running with the flood of incoming emails.  My setup is as
>> follows:
>> Qpsmtpd v0.32 running with forkserver
> 
> Maybe take Apache::Qpsmtpd for a spin.  Anecdotal evidence suggests that
> it is faster than forkserver [1], and it is a fairly simple install.
> Apache.org is using it and processes quite a bit of mail.
> 
> [1]
> http://osdir.com/ml/mail.qpsmtpd/2006-04/msg00035.html

-- 
Ed McLain
Sr. Data Center Engineer
TekLinks, Inc.
205.314.6634
[EMAIL PROTECTED]



Re: Performance / Tuning questions

2007-08-15 Thread Fred Moyer

Ed McLain wrote:

Hello all,
Got a quick question for all those out there running large setups using
qpsmtpd.  We currently have a setup which is load balanced across an several
qpsmtpd servers running a custom linux distro that basically runs the entire
setup in ram for maximum performance.  Until lately the setup has been
running absolutely wonderful but with all these spam bots running around
I've started noticing some odd issues and I'm about to start pulling my hair
out.  I've tweaked and tweaked the sysctl vars for the network interfaces,
disabled rdns, and also removed almost all of our plugins in an attempt to
keep the machines running with the flood of incoming emails.  My setup is as
follows:
Qpsmtpd v0.32 running with forkserver


Maybe take Apache::Qpsmtpd for a spin.  Anecdotal evidence suggests that 
it is faster than forkserver [1], and it is a fairly simple install. 
Apache.org is using it and processes quite a bit of mail.


[1]
http://osdir.com/ml/mail.qpsmtpd/2006-04/msg00035.html