[bind10-dev] more about cache (Re: cache effectiveness)
JINMEI Tatuya / 神明達哉
jinmei at isc.org
Fri Mar 1 18:59:06 UTC 2013
At Thu, 28 Feb 2013 09:05:22 +0100,
Michal 'vorner' Vaner <michal.vaner at nic.cz> wrote:
> I noticed you kind of implicitly assume threads. I guess nothing would change
Not necessarily, but admittedly I have a feeling that for some large
scale deployments using threads is quite likely to be the only
feasible choice to achieve highest response performance without
bloating memory and/or network.
> too much in this stage of design if we consider separate processes, but we
> should probably answer that question. In my understanding, we wanted to avoid
> threads if at all possible.
[...]
> Just a crazy idea. If we had some reasonably fast IPC mechanims, we could
> outsource the cache to separate process. We actually could have several such
> single-threaded caches. Then the process asking the cache would compute some
> hash, and pick which cache to ask based on than. The caches could be lock-less
> too (though, the locking would be probably delegated onto the IPC mechanims).
>
> The IPC could be asynchronous, so the resolver would act as if it was upstream
> query to the remote server mostly (eg. proceed to other queries before the
> answer arrives).
>
> I have no idea if that would work.
That might actually be an option if we can assume the "layer-1 cache"
covers the vast majority queries. But it would depend on many things
whether this design is really effective, so I suspect we cannot be
sure at least without some actual experiments.
---
JINMEI, Tatuya
Internet Systems Consortium, Inc.
More information about the bind10-dev
mailing list