Dieter Kluenter wrote:
Hi,
Victorvictorfuman@yahoo.com writes:
Hi Dieter,
Many thanks for your response. I increased the cache size by 10 times in both slapd.conf and DB_CONFIG. The performance got improved, but not impressive. For example,
Searching by first name only using "scott*" only (for wildcard) for the 1st time still took 12937 ms to find 881 users (BTW, I was using SpringLDAP Java client). My other responses are inline.
Ah, java clients. Performance of java clients is really a design matter. To my experience in most cases java clients are badly designed and in most cases responsible for performance loss. Try OpenLDAP tools or a benchmarking tool to get comparable results. Something like time ldapsearch<parameters>, charge, http://loadtesting.sourceforge.net, slamd, http://www.slamd.com.
I wanted to consider scaling factor. If we use OpenLDAP in production, we will have over 350million user entries. I probably don't want to put so many entries in cache unless it is really needed. That is why I used a relatively small cache in my prorotyping (in the hope it can scale up).
Howard Chu has conducted some large scale tests, search the archive for his reports.
OpenLDAP easily scales to several billion entries. http://connexitor.com/blog/pivot/entry.php?id=203
It delivers better performance at all sizes than any other directory server in the world.