Autor: Jose de Paula Eufrásio Junior Data: A: exim-users Assumpte: [exim] Performance Tweaks
Hello there.
I use exim in two similar setups, using MySQL to get the path of the
maildir of the user, to decide if the domain is local or not, if it's a
relay domain...
I get about 500 messages a minute, most of then rejected by the internal
(txt) blacklist and antivirus (exiscan). about 20 messages are rejected
for sender verify errors, other 10 by dns blacklists and 4 or 5 by user
blacklists (stored in a mysql table). Circa 20 messages are delivered,
using the data of the main mysql table.
This week I optimized some queries using a mysql tunning article about
slow queries and the use of indexes, but I'm looking for more :)
for example, with 10 dns blacklists in a minute I got about 600 requests
for 5 or 6 different blacklists in an hour, 3000 blacklists checks! the
sender verify too gets a little larger on very busy spam days. the
deliveries itselves demand exim to make a connection and 2 queries for
each message that arrives, that's about 40 queries in a minute, 2400
queries easy.
So, if anyone can provide manners to make this checks a little less
demanding in DNS and bandwidth and optimizing even more the MySQL
connections (some sort of extended cache maybe? replicating the
blacklists locally?)