On 1/12/2011 6:45 p.m., Benjamin wrote:
Hi,
As per document, i get that this option "--disable-internal-dns" is
useful while we are talking for good performance in heavy load.
The docs are a little bit old and now a bit misleading.
The internal component operates in a multi-threaded concurrent design
that has no limits on the number of simultaneous active lookups, and
operates seamlessly between HTTP processing actions in Squid.
dnsserver helper is from the early days of Squid. It handles the
blocking system calls the OS provides to do DNS. It has a maximum DNS
packet throughput that is very, very low (5-10%) compared to the
internal component. On systems needing many DNS requests it acts as an
upper speed limit, on systems needing none or few lookups it acts as a
resource wasting process. I recommend avoiding it unless you need some
special OS DNS feature which your Squid version cant access via its
internal component.
As per document :
The number of processes spawn to service DNS name lookups.
For heavily loaded caches on large servers, you should
probably increase this value to at least 10. The maximum
is 32. The default is 5.
This is should better be written as "*if* you are running dnsserver on a
heavily loaded cache..."
You must have at least one dnsserver process.
Assumes that one is running dnsserver processes at all. The internal DNS
component uses zero helpers, naturally.
Last statement " You must have at least on dns server. So while
compilation we need dns server running on OS because when i compiling
this option with srpms. i m facing error with this [ dnsserver ].
No. "dnsserver" is the Squid helper name, different from "a DNS server".
The helper uses the OS DNS lookup routines. The DNS server they use can
be anywhere (close is better for speed reasons only).
Hope this helps :)
Amos