OK Bill, not so fast :)

I don't call the ClusterManager for every property Change.
I have a slightly modified interface, not the one chamikara provided.

I only replicate at the end of an invocation.
So here are the no of calls per invocation.

if first request, 3 calls.
One for Service Group ctx creation, one for service ctx creation, one for
stateUpdate.

for subsequent invocations
only one call. State update.

Now thats not bad.
I don't think just 3 NOP's at the max and 1 NOP at the minimum is that much
of a performance impact :)

Regards,

Rajith Attapattu
Red Hat.

On 2/6/07, Bill Nagy <[EMAIL PROTECTED]> wrote:

That's what I inferred from the interface -- any time there is a context
change or a property change, you want your interface to be invoked.
That's an awful lot of method invocations (even if they're no-ops) for
something arguably not core to a web services runtime.

-Bill

On Tue, 2007-02-06 at 21:32 +0530, Chamikara Jayalath wrote:
> Hi Dims,
>
> As this is still is its design stage final approach hs not been
> decided. The current code is available in a branch so no affect on the
> performance of the trunk.
>
> A method of the ClusterManager instance hs to be called in events such
> as Context creation and removal. Currently these directly get called
> from respective places of the context classes (should happen only if a
> ClusterManager hs been set i.e. when clustering is enabled).
>
> Chamikara
>
>
> On 2/6/07, Davanum Srinivas <[EMAIL PROTECTED]> wrote:
>         Chamikara,
>
>         New notifications? like what we have already for
>         services/modules?
>
>         -- dims
>
>         On 2/6/07, Chamikara Jayalath <[EMAIL PROTECTED]> wrote:
>         > Hi Bill, Dims,
>         >
>         > The ClusterManager impl will be initiated with the
>         ConfigContext. This will
>         > be called in places like Context Creation and removal and
>         may be property
>         > updates (hvnt fully decided yet). When Clustering is not
>         present the cost
>         > should be reduced to a null check.
>         >
>         > Chamikara
>         >
>         >
>         >
>         >
>         > On 2/6/07, Davanum Srinivas <[EMAIL PROTECTED]> wrote:
>         > > Bill,
>         > >
>         > > from what i understand, it's in a separate maven module.
>         Not in
>         > > kernel. So you can ignore it :)
>         > >
>         > > -- dims
>         > >
>         > > On 2/6/07, Bill Nagy < [EMAIL PROTECTED] > wrote:
>         > > > What is the cost of this going to be for someone who
>         doesn't want
>         > > > clustering/this particular approach to clustering?  I
>         can't infer much
>         > > > from the interface -- exactly which respective events
>         are you referring
>         > > > to?
>         > > >
>         > > > -Bill
>         > > >
>         > > >
>         > > > On Thu, 2007-02-01 at 23:16 +0530, Chamikara Jayalath
>         wrote:
>         > > > > At initiation Axis2 will load a ClusterManager
>         implementation object
>         > > > > (if configured) and will call the methods of it
>         whenever respective
>         > > > > events occur.
>         > > > >
>         > > > > Chamikara
>         > > > >
>         > > > >
>         > > > > [1] ClusterManager interface
>         > > > >
>         > > > > public abstract class ClusterManager {
>         > > > >
>         > > > >     public abstract void init (ConfigurationContext
>         context);
>         > > > >     public abstract void addContext (AbstractContext
>         context);
>         > > > >     public abstract void removeContext
>         (AbstractContext context);
>         > > > >     public abstract void addProperty (AbstractContext
>         context, String
>         > > > > propertyName, Object  propertyValue);
>         > > > >     public abstract void removeProperty
>         (AbstractContext context,
>         > > > > String propertyName);
>         > > > >     public abstract void touchProperty
>         (AbstractContext context,
>         > > > > String propertyName);
>         > > > >     public abstract void commit ();
>         > > > >
>         > > > > }
>         > > > >
>         > > >
>         > > >
>         > > >
>         >
>
---------------------------------------------------------------------
>         > > > To unsubscribe, e-mail:
>         > [EMAIL PROTECTED]
>         > > > For additional commands, e-mail:
>         [EMAIL PROTECTED]
>         > > >
>         > > >
>         > >
>         > >
>         > > --
>         > > Davanum Srinivas :: http://wso2.org/:: Oxygen for Web
>         Services Developers
>         > >
>         > >
>         >
>
---------------------------------------------------------------------
>         > > To unsubscribe, e-mail:
>         > [EMAIL PROTECTED]
>         > > For additional commands, e-mail:
>         [EMAIL PROTECTED]
>         > >
>         > >
>         >
>         >
>
>
>         --
>         Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web
>         Services Developers
>
>
---------------------------------------------------------------------
>         To unsubscribe, e-mail: [EMAIL PROTECTED]
>         For additional commands, e-mail: [EMAIL PROTECTED]
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to