Chris St. Pierre schrieb:
We're sharing our Bayesian database (MySQL) between two MX nodes and
the database server has hit a wall. It's underpowered and is no
longer able to keep up with the I/O demands of our two MXes. During
the day, uptime on the machine plateaus at about 5-7, and iowait
percentage rides at about 70-90%. Our mail queue and time-to-scan
skyrocket. Luckily, we've been able to catch up at night thus far,
but it's still not fun having 500 messages enqueued from 8-5 daily.
Until I get our DB box replaced this summer, is there anything I can
do to make things work more efficiently? Options I'm currently aware
of are:
1. Stop doing Bayesian filtering.
2. Turn off autolearn.
3. Throw more hardware at the problem (which is the plan --
eventually...)
I ran a manual ''sa-learn --force-expire'', but that didn't have any
effect.
Database sizes (in rows) are as follows:
bayes_expire: 219
bayes_global_vars: 1
bayes_seen: 670102
bayes_token: 801496
bayes_vars: 117
To give an idea of the magnitude of this problem: it took 34 minutes
and 19 seconds to count the bayes_seen rows.
Mail volume per MX is roughly 40K messages per day, <10K of which ever
make it to SpamAssassin.
Ideas? Thanks!
Chris St. Pierre
Unix Systems Administrator
Nebraska Wesleyan University
----------------------------
Never send mail to [EMAIL PROTECTED]
Chris St. Pierre
Unix Systems Administrator
Nebraska Wesleyan University
402.465.7549
----------------------------
Never send mail to [EMAIL PROTECTED]
Looks to me you either have some really ancient machine doing the job or
your MySQL setup is somewhat barfed.
I had problems with MySQL keeping up with the input for my iXhash lists.
I switched to InnoDB (better suited for concurrent access), googled some
info from http://linuxweblog.com/node/231 and
http://mysqluc.com/presentations/mysql05/zaitsev_asplund.pdf and (most
importantly, I think!) set the option 'innodb_flush_method = O_DSYNC'.
For comparison, I have two tables with ca 1.000.000 rows each on a HP
DL360 G1 ([EMAIL PROTECTED] and 2 Gig RAM and SCSI disks with 10K. mtop said
at times it makes up to 2K queries per seconds. Should be enough for you
too...
You don't say what your hardware is but tuning and putting in some more
RAM should help
Dirk