[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kfm-devel
Subject:    Re: Interesting thing with DNS requests
From:       Thiago Macieira <thiago () kde ! org>
Date:       2006-12-08 9:36:38
Message-ID: 200612081036.56254.thiago () kde ! org
[Download RAW message or body]


Stephan Kulow wrote:
>Am Donnerstag, 7. Dezember 2006 18:51 schrieb Thiago Macieira:
>> If the server doesn't support connection keep-alive, you should fix
>> it.
>
>Isn't fixing the web _and_ your DNS servers asked a bit too much?
>
>What is so problematic about implementing a DNS cache within KDE
>if it turns out to be a problem for soo many people setting up one
> correctly?

Like I said, this was a very corner case: a webpage with 180 items on it, 
coupled with the absence of connection keep-alive, multiple webservers 
(including ads and that kind of stuff) and a slow DNS server.

No wonder it was slow.

I will not implement a global DNS cache on KDE because there already is a 
program that does that and for the whole system: nscd. Just install it. 
There is no need to import the nscd code into kded.

That said, one of the ideas I had for KDE 4 was to be a global connection 
broker for KIO. That would avoid round-robin DNS errors. IIRC, the 
original bug report that led to that idea was a hostname for an FTP 
server that led to two different servers, which had slightly different 
layouts. Sometimes downloads would work, sometimes they unpredictably 
wouldn't, because KIO would reconnect and end up at the wrong server.

The solution was to have all lookups go through a centralised daemon 
(kded) and the results -- IPs -- be shared among the ioslaves in a very 
specific and controlled order.

-- 
  Thiago Macieira  -  thiago (AT) macieira.info - thiago (AT) kde.org
    PGP/GPG: 0x6EF45358; fingerprint:
    E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358

[Attachment #3 (application/pgp-signature)]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic