directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lécharny <>
Subject Server performance improvements
Date Sat, 03 Aug 2013 00:35:33 GMT

I applied one of the modifications I suggested in one of my previous
mail : we pre-compte the set of candidates in the count() method, attach
the set to the filter node (thanks god, we have a way to attach anything
to the Node structure !) and use this set instead of constructing it
again in the computeEquality() method. The gain is clear :


Mavibot 10K entries
Add : 80s, 125/s
Search : 5091/s ---> 15000/s

Jdbm 10k entries
Add : 167s, 59/s
Search : 654/s --- 10009/s


Mavibot 10K entries
Add : 85s, 117/s
Search : 1802/s ---> 3467/s

Jdbm 10k entries
Add : 176s, 56/s
Search : 506/s --- 3009/s

That more than doubled the server's performance...

We have many more ways to improve the server... But still, this was a
second easy improvement after the previous 45% gain !

Side note 1 : the old JDBM performances were horribly low. It seems
really strange that we are now able to get 6 times better result. I will
re-run the tests without my last change to see what I get.

Side note 2 : for the network tests, the cost of the encoding/decoding
is high, and is paid twice (on the server and on the client). This is
why we have much lower performances compared to the CoreSession tests.

Emmanuel Lécharny 

View raw message