httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ralf S. Engelschall" <...@engelschall.com>
Subject Re: cvs commit: apache-2.0 STATUS
Date Thu, 02 Dec 1999 19:40:21 GMT

In article <E11tXR5-000JOU-00@fanf.eng.demon.net> you wrote:
> "Ralf S. Engelschall" <rse@engelschall.com> wrote:
>>
>>But IMHO for Apache you also need _asynchronous_ resolving to make
>>sure the server processes are not blocked out a thread inside the
>>resolver library.
> 
> I'm not convinced that Apache's architecture would allow it to benefit
> from an asynchronous resolver. What can a thread do while it's waiting
> for a DNS reply?

Not the same thread can do anything useful, but _OTHER_ threads in the
_SAME_ process can do anything in the meantime. Because if the resolver
is synchronous and non-preemptive threading is used, this blocks
the whole process. Sure, we can argue that we _require_ preemptive
threading, but at least Pthreads doesn't require this, of course. And
using an asynchronous resolver allows us to not having to require this.

>>Something like GNU adns, BIND's libares, etc. I think is needed
>>here...
> 
> AFAIK the asynchronous resolver that comes with bind is called arlib
> (in the contrib tarball). "ares" is the MIT Project Athena resolver.
> ftp://athena-dist.mit.edu/pub/ATHENA/ares

Ops, sorry. Yes, I meant BIND's arlib. I confused the names.

                                       Ralf S. Engelschall
                                       rse@engelschall.com
                                       www.engelschall.com

Mime
View raw message