Re: [Exim] Exim 3.16 - change 24

トップ ページ
このメッセージを削除
このメッセージに返信
著者: Philip Hazel
日付:  
To: John Horne
CC: Exim Users List
題目: Re: [Exim] Exim 3.16 - change 24
On Mon, 24 Jul 2000, John Horne wrote:

> ----------
> 24. Added an in-memory cache of DNS lookups that fail or give DNS failures
> such as timeouts. This means that a message with many addresses at the same
> domain that times out won't take an excessively long time to route. There is
> no caching for successful lookups - we rely on resolver and name server
> caching in that case.
> ----------
>
> Does this refer to actual name server problems - for example ones giving
> timeouts - or is this a form of negative-caching (whereby the DNS entry just
> doesn't exist)? If the latter is this going to cause a problem for local
> caching servers which use their own negative-caching? (I'm thinking aloud
> here :-))


I do not think it will cause any problems. The reason I added it was to
improve performance on systems that are handling mailing lists with
1000's of users, many of whom are in the same domain. Exim will attempt
a DNS lookup for that domain many times as it routes each address. [*]
If that domain's nameservers are down, leading to timeouts, there will
be a rather long delay. By caching the results of the lookup, this does
not happen.

When I implemented it, I figured I might as well cache all non-success
results of DNS lookups, so yes, it is doing negative caching too - but
all of this applies only within a single Exim process, so the cache is
only kept for a short time.

----------
[*] Originally, if Exim came across a domain it had previously routed,
it just copied the routing information. However, when the routers
became more complicated, with the addition of "senders" and "condition"
and "local_part", it had to stop doing this, because there is no
guarantee that the same domain will route the same way. In fact,
multiple successful DNS lookups don't usually cost very much because of
the name server and/or resolver caching. (Where "successful" here means
"gets a definite answer".)

-- 
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.