Hello,
For some time we have been offering a free email redirection service. Due
to some recent press it has suddenly picked up and we are registering more
than 100 users / day. The way we have it set up is using a database lookup
of the evelope recipient and then redirecting via |/var/qmail/bin/forward
to the users real email address.
Everything was running great until a couple weeks ago. We now have around
20 thousand accounts and at times email rerouting is getting slow.
Yesterday was a good example. I noticed that the queue was getting over the
2000 mark and kept growing. When I sent email to a test account I maintain
(that delivers to the same network) my email would experience tremendous
delays (two hours) before being delivered.
My basic question is how can I increase the throughput of my Qmail 1.03
installation?
What I have done:
I have both concurrencylocal and concurrencyremote set to 120. But most of
the time qmail has around 10 qmail-remote processes going. Every now and
again I give it the ALRM signal and that shoots up the processes but then
eventually things back down to the around 10 level.
A week or so ago I added the big-todo.patch although I am not really sure
what it does. I didn't really see an improvement.
I have tcpserver at -c80 for qmail-smtpd.
One thing I find discouraging is when the queue inflates and a new email
(my test email) gets sent in there is a delay. It is as if the queue really
is a queue in the FIFO sense.
In a moment of desperation I installed zmailer to handle the outbound
transmission of new emails. That seemed to solve some queue problems but
zmailer soon brought my machine to its knees by eating all the memory,
despite resource limits in its config files.
Is there anything more than I can do or strategies I could persue?
Something I missed?
Advice would be greatly appreciated!
Many thanks,
Alex Panagides
Ceará, Brazil
PS. Platform: Debian/Linux 2.1, (2.2.10) Pentium 233, 160Mb SDRAM