著者: Peter Bowyer 日付: To: exim users 題目: Re: [exim] spammers IP ban
On 28/02/06, David Saez Padros <david@???> wrote:
> > That would be my worry, too, along with the (certain) delays and
> > (possible) erroneous results when the MySQL connection isn't
> > available. Hence my use of the log-scraping technique to take the
> > database writes out of the critical path.
>
> is faster to directly write to mysql instead of parsing the log,
> specially if the log file is very big,
Exim writing to the log has no incremental overhead at all - unless
you've turned off logging for some reason. However fast a MySQL INSERT
is, it's slower than doing nothing extra at all.
> the mysql connection is
> done to localhost so there are no connection problems (you can
> also use delayed inserts to speed up things).
While MySQL is up, agreed. My point was the unpredictable situation
when it isn't.
> Having the data in
> mysql also gives some extra features if you want to do later some
> statistics, expire blacklist status, allow your users to whitelist
> a badly whitelisted host, etc ...
Absolutley - my logscraper (which picks up new log entries sub-second)
writes to MySQL for exactly these reasons. But it does it without
impacting the mail delivery flow.
> Anyway if you use a log parser then it would be better to directly
> write to a db like dbm that could be read faster by exim than adding
> it to a mysql database and then building a text file which is very
> slow for exim to parse.
Exim doesn't parse any of these for me - the MySQL database is used to
generate a config file for rbldnsd; Exim queries the private rbldnsd
zone which is really quick, and you can control Exim's behaviour
should the rbldnsd daemon be unavailable for some reason.