You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by Emmanuel Lecharny <el...@gmail.com> on 2010/05/08 11:13:26 UTC
Search operation : some more speedup
Hi guys,
this morning, I was able to get an extra 3500 search/s on the
coreSession.search() operation : up to 21798 search request per second
from 18316 req/s yesterday.
This is a 2.8 times improvement since I started playing with Yourkit !
The same test done including the network layer (client + server) gives
3763 search per second. Considering that I'm just searching for a single
entry from its DN, with one single thread, I would be curious to know
what kind of numbers we can get with external injectors pounding the
server...
There are more to come, but it will be a bit more difficult. The three
things we can improve are :
- Avoid normalizing twice the same DN
- try to use a DN cache to avoid costly parsings
- try to avoid cloning the entry before returning it (this is probably
the major improvement, as cloning represents almost 40% of the consumed
time)
I will try to work on the first and third aspects, as they are easier to
implement.
More to come ...
--
Regards,
Cordialement,
Emmanuel Lécharny
www.nextury.com
Re: Search operation : some more speedup
Posted by Alex Karasulu <ak...@apache.org>.
Whhooooooooaaaaahhhhh!!!! That's great man!
On Sat, May 8, 2010 at 12:13 PM, Emmanuel Lecharny <el...@gmail.com>wrote:
> Hi guys,
>
> this morning, I was able to get an extra 3500 search/s on the
> coreSession.search() operation : up to 21798 search request per second from
> 18316 req/s yesterday.
>
> This is a 2.8 times improvement since I started playing with Yourkit !
>
> The same test done including the network layer (client + server) gives 3763
> search per second. Considering that I'm just searching for a single entry
> from its DN, with one single thread, I would be curious to know what kind of
> numbers we can get with external injectors pounding the server...
>
> There are more to come, but it will be a bit more difficult. The three
> things we can improve are :
> - Avoid normalizing twice the same DN
> - try to use a DN cache to avoid costly parsings
> - try to avoid cloning the entry before returning it (this is probably the
> major improvement, as cloning represents almost 40% of the consumed time)
>
> I will try to work on the first and third aspects, as they are easier to
> implement.
>
> More to come ...
>
> --
> Regards,
> Cordialement,
> Emmanuel Lécharny
> www.nextury.com
>
>
>
--
Alex Karasulu
My Blog :: http://www.jroller.com/akarasulu/
Apache Directory Server :: http://directory.apache.org
Apache MINA :: http://mina.apache.org
To set up a meeting with me: http://tungle.me/AlexKarasulu