| Emmanuel Lecharny 2007-05-21, 7:11 pm |
| Ole Ersoy a écrit :
> OK - Now I'm getting all mixed up
> about whether I should change the heading or not.
>
> I'm going to trust Emmanuel's judgement, and just leave it.
Sorry, I didn't read Alex comment, and he is right. So I changed the
subject 
>
> Emmanuel Lecharny wrote:
>
>
>
> SNIPPING the SNIP
>
>
>
> Hmmm - So I assume then that
> that even though the webapp
> and ADS are running on the same
> host the webapp that runs with
> ADS embedded will run faster than the
> one connecting to ApacheDS via JDNI?
>
> I also assume that we're talking a significant
> improvement like 5 to 10 % faster.
I would say 5 to 10 times faster.
>
>
>
> I'm thinking ADS beside the server running the webapp.
> So the webapp connects to ADS via JNDI.
> But if there is performance to be gained from
> embedding ADS within the webapp then that of coarse is very valid.
Yes, this is the perfect scenario. Also consider people who don't want
to bother with an external LDAP server installation.
>
>
>
> The only thing I had in mind was to separate
> the application layer from the data store,
> through an integration layer so as to maintain
> modularity and make each piece appeal to as many
> people as possible.
Usually, when you have a webapp and you need to address a LDAP server,
it is a separated LDAP server, ADS is bringing this new possibility to
embed it. I don't know about another LDAP server which allow you to do
so (except OpenDS, AFAIK). So the scenario you are thinking of is the
scenario everybody use.
>
> For low volume applications like administration, etc.
> this makes sense because more people can use the webapp,
> thus more people will be interested in improving it,
> and performance is a fairly minor consideration.
>
> On the other hand if the webapp is a phone directory
> and gazillions of connections are made per second then
> maybe embedding is a good thing. This is why I asked about
> the percentage gain in performance via embedding vs.
> JNDI on the same host.
It is huge. I dind't measured it yet, ut from the profiling session I
have done, the ASN.1 codeing/decoding + network layer is really costing
a lot.
>
> The main thing I was trying to high light was that there
> could be a developer interest cost to embedding,
> so choosing the right set of use cases is important.
The good thing with ADS is that embedding cost almost nothing, as you
communicate with ADS using exactly the same API as the one you will use
to communicate with a remote LDAP server : JNDI. In fact, this is
totally transparent, except the initialization.
Emmanuel
|