[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: search speed



> Hi,
>
> I'm developing a web based ldap application where I need to do 4-5
searches
> to build my webpage. The searches I do are all base searches, that only
> return one entry. I'm using Perldap and I cannot get the search time below
> 100 miliseconds for each search.

This is the TCP IP protocol behaviour. Before sending any data, the TCP
socket
wait for a maximum of 200ms for additionnal data (it work like this on AIX).
This increases performance when multiple entries have to be sent (it limits
the number of IP/Ethernet Frame).

If you really need fast response you should edit your OpenLDAP sources
(daemon.c)
and set the TCP_NODELAY flag on client socket (like it is on the server
soket).
Then, response time should go under 5ms.

> For comparison, I've tested Netscapes
> Directory Server that performs about 10-20 times faster, completing each
of
> my searches at about 5-10 miliseconds. I've tried to increase the cache,
to
> index attributes but it doesn't seem to help. Does anybody have a clue as
to
> how I can improve OpenLdap's searchtime.

Maybe Netscape Directory Server dynamiquely sets the TCP_NODELAY flag.

If someone has the time I haven't to think about that :
- setting the TCP_NODELAY flag before sending the LDAP_RESULT if there
are no more running queries(thread) on the client socket should greatly
improve
response time.


    Elouen



===========================
Elouen LANOË
elouen.lanoe@ifrance.com
===========================



 
______________________________________________________________________________
Vous avez un site perso ?
2 millions de francs à gagner sur i(france) !
Webmasters : ZE CONCOURS ! http://www.ifrance.com/_reloc/concours.emailif