I had started implementing asynchronous DNS resolving in jabberd, to really fix problem of resolver timing out requests by accumulation.
If there are 20 requests to process at the moment, and each takes 5 seconds to resolve (default libresolv timeout), then with 30 seconds request timeout (default jabberd timeout), resolver will process only 6 first requests, with 14 failing with timeout when resolver didn't even try to resolv it. I tried to fix it by prolonging timeouts, but it hurts on the user experience point of view - when a request takes more than 30 seconds to finish, users tend to cancel it and retry. Answer after 5 mins of waiting is not an option. So, the real solution is to implement asynchronous DNS resolving. I'm going to use UDNS http://www.corpit.ru/mjt/udns.html library. Is everyone OK with it? And the second question arises. With async DNS, we are able to ditch the whole resolver component completely - s2s will be perfectly able to do the resolution by itself. Resolver component was only needed to delegate the blocking DNS resolution requests to another process. I do see a use for resolver component in big, distributed deployments, to do central name-resolution for all present s2s components. But as for now, the resolver does only resolving. The name-2-address mappings are cached... but in the s2s itself! So, with the current design, we could move the resolution to s2s and loose nothing. Or we could move the caching to resolver. The s2s based resolving could also help in split-horizon DNS cases. I personally am after the first option. Am I loosing something, or we could just go with ditching the resolver? And then, if we do left resolver behind, does it justify raising the minor number of jabberd version. It sure is architectural change, and I think we should release the ADNS branch under 2.2.x line. -- /\_./o__ Tomasz Sterna (/^/(_^^' Xiaoka.com ._.(_.)_ XMPP: [EMAIL PROTECTED] _______________________________________________ Jabberd2 mailing list Jabberd2@lists.xiaoka.com http://lists.xiaoka.com/listinfo.cgi/jabberd2-xiaoka.com