Author: Mark Moseley Date: To: exim-users Subject: Re: [exim] Mail Implementation Design
> > We have around 7500 mailboxes currently. We handle around 80 000 mails
> daily
> to those mailboxes. We have a greylist solution in Exim that works with a
> MySQL database backend and we make use of DNSBL lists. All our servers are
> running FreeBSD 5.x and 6.x
>
While I don't disagree with the other suggestions in this thread about
dumping to db files (esp cdb files), I'm curious about how many mysql
queries you're doing per email. Is it the 4 you mentioned or more on top of
that? Unless you're also loading the MySQL server up with other applications
or are doing a whole boatload of queries per email, 80k emails per day
resulting in 320k queries/day shouldn't cause MySQL to hardly break a sweat.
Your MySQL box sounds plenty fast enough. If you're seeing memory problems,
you might consider upgrading your MySQL (and preferably use the binary
supplied by MySQL). You might also want to lower some of the memory usage in
my.cnf. As far as multiple queries go, assuming you have the query cache
turned on and aren't making continuous changes to the tables involved, the
query cache should reduce the overhead of the subsequent duplicate queries
to almost nothing, as far as the mysql box is concerned. Do you have a
steady increase in the Qcache_hits field of 'show status'? If not, you might
double check the duplicate queries to make sure they are completely
identical.
I can't speak to the FreeBSD part and I promise I'm not trying to start a
flame, but you might want to try running MySQL on a recent linux distro to
see if it helps with your memory issues.