On Mon, Mar 27, 2000 at 03:50:07PM +0200, Andreas Aardal Hanssen wrote:
> >> I'm using ReiserFS (which, BTW, is working very well). My
> >> mailsystem receives 70'000 mails a day and the throughput
> >> is just about twice that. Average mails sent per second
> >> varies around 70-170 mails.
> > Uhm.. with 86400 seconds to a day, your average throughpout should be
> > about 2mails/sec.
> > What you are stating here is impossible.
>
> Or a typo, perhaps. Thank you for making a good point in
> this discussion. It should be 'per minute', as everyone
> else seems to have understood.
>
> -----------
> Closing up this discussion:
>
> The problem was: How can I make qmail deliver more mails per
> day, how to increase to flow of mails, considering that a
> computer has 1.4 in 15-minute uptime load on average mid-day.
Watch vmstat output and determine your bottle-neck(s).
I don't think your hardware is the problem though.
We achieve a much better through-put on cheaper hardware.
More specifically, a 2xPII-550 system w/ 512MB RAM and some
UW SCSI disks performs about 900k delivery attempts/day. It
peaks at 30 deliveries/s.
This is a list server, so it does not receive nearly as many
emails as it delivers.
> Currently the system does actually use our own mail delivery
> program (the magic '|' option in dot-qmail). This, ofcouse,
> serves our purpose much better than the /Maildir system
> or LDAP databases.
>
> It seems I might have solved our problem by removing the
> unneccesary qmail-local from the delivery system, so that
> qmail-lspawn spawns my delivery program directly.
How high is your concurrencyremote setting? We use the
big-concurrency patch to deliver up to 1000 emails
concurrently.
> I also removed some unnessecary fsync()s as they were
> slowing down everything very much. It also seems that
> Linux's ulimit on processes-per-child has been a problem.
> Burst mailing causes serialization because Linux won't
> spawn child processes. That too is no problem anymore.
You have to increase a compile-time limit in order to fix
this. It's trivial.
- Sascha