[Pdns-users] PowerDNS cannot handle the load?

Brad Knowles brad.knowles at skynet.be
Thu Apr 24 20:58:20 UTC 2003


At 8:38 AM -0700 2003/04/24, Mike Benoit wrote:

>  Thanks for the correction, I wasn't sure about Bind 9. Does Bind 9 load
>  the zones faster then Bind 8 by chance?

	In terms of end-to-end time, from start to all-zones-loaded, I'm 
not sure that there is any real difference in the loading speed. 
However, since BIND 9 is internally multi-threaded, it can answer 
queries from pretty much the moment it is started, while other 
threads continue to load the zones.

>  This is true. But I don't think your looking at the whole picture. Lets
>  take a Bind setup with 10,000 zones, and PDNS with 10,000 in it's SQL
>  database (or BIND backend, I think it works pretty much the same). Now
>  assume we know the very last zone that Bind will load, and (though it
>  doesn't matter) the very last zone in the PDNS backend "database". Start
>  both name servers, and immediately query for this very last zone.
>
>  How does BIND handle this case? I assume the query will fail. However
>  PDNS, though the query might take 1-5ms to answer the first time, it
>  should have no problem doing so.

	If BIND hasn't loaded the zone yet, then obviously it can't 
provide the proper answer for the query.  However, I don't know if it 
will respond with REFUSED, SERVFAIL, NOTIMPL, or simply not respond 
at all.

>  If you don't wait for it to completely start, then you need to track
>  failed queries and account for these in the test results. This was
>  partly my point. BIND caches all zones right from the get-go, if you
>  want to compare apples to apples, put both name servers in the same
>  "state" and run your test. Either all zones cached, no zones cached, or
>  "real-world" where queries start coming in immediately after the name
>  server is started.

	That was basically my point -- the multiple runs of queryperf 
would be responsible for putting PowerDNS into an all-zones-cached 
state, at which point you could do an 
apples-to-something-not-too-different comparison with BIND (once it 
has loaded all the zones).

	What is interesting in this case is to see how long it takes to 
get to the all-zones-cached state for each program, and how fast the 
programs can perform once they have reached this state.


	In the real-world cases, PowerDNS won't be caching all the data 
from all the zones, so it should require less memory to cache the 
data that is being actively queried, and the overall performance 
might even be better.

-- 
Brad Knowles, <brad.knowles at skynet.be>

"They that can give up essential liberty to obtain a little temporary
safety deserve neither liberty nor safety."
     -Benjamin Franklin, Historical Review of Pennsylvania.

GCS/IT d+(-) s:+(++)>: a C++(+++)$ UMBSHI++++$ P+>++ L+ !E-(---) W+++(--) N+
!w--- O- M++ V PS++(+++) PE- Y+(++) PGP>+++ t+(+++) 5++(+++) X++(+++) R+(+++)
tv+(+++) b+(++++) DI+(++++) D+(++) G+(++++) e++>++++ h--- r---(+++)* z(+++)


More information about the Pdns-users mailing list