[Date Prev][Date Next]
Performance tests, openldap slapd vs netscape slapd
I have been interested in a performance comparison between the openldap
slapd and the netscape slapd servers. So I wrote a program in c which
allows me to add and delete directories of arbitrary sizes and to time
My directory consists of two types of entries.
1. Subdirectories which have about 4 attributes
2. Entries which contain about 6 attributes.
My initial test consisted of a tree with the following properties.
1. Each subdirectory contained 5 more subdirectories, except at the final
depth of the tree.
2. Each subdirectory contained 5 entries.
3. The depth of the tree was built to a depth of 5.
This resulted in a tree with approximately 3900 subdirectories and 19,000
For the test, the minimal cache was chosen (netscape has a lower limit on
the allowed cache size). That is, each servers cache was set to 1000
entries and 500k bytes. This should have minimal impact on the search
results since almost 23000 entries must be searched for the whole tree.
The results(Athlon 650, Redhat Linux 6.1):
AddEntry 1-10 entries/second 25-45 entries/second
DeleteEntry 10-30 entries/second 40-45 entries/second
Search 5700 searches/second 2600 searches/second
DataRead 750 entries/second 800 entries/second
*DataRead corresponds to the number of entries returned per second after the
search was complete.
Overall I found that it takes much longer to add to the openLDAP slapd than
netscapes, but that the searches in openldap were twice as fast. This of
course if perfectly acceptable since the idea behind LDAP is mostly reading
and rarely writing.
One odd thing that I did encounter was with the time it took to add
entries for openldap. At first, as more entries were added, it took longer
and longer to add them to the database. Then at some point(maybe 4000
entries) it started taking less and less time to add entries. This seems a
bit odd to me. Does anyone have an explanation for this?
Any comments on the tests?
Has anyone else done similar performance tests?
I also encountered a subtle difference between openldap and netscape.
In openldap the DN does not have to contain valid attributes to the schema,
while in netscape each piece of the DN must be allowed in the schema. For
compatibility it seems wise to make sure the DN contains valid attributes.
Get Your Private, Free Email at http://www.hotmail.com