Rickard �berg wrote:

> On Thu, 20 Jul 2000 07:25:07 -0400, dan benanav <[EMAIL PROTECTED]>
> wrote:
> >1) Clustering is transparent only for idempotent stateless session
> >beans.  (Idempotent means that the same method can be called multiple
> >times without sacrificing integrity of the data. Or that calling it more
> >than once has the same effect as calling it once.)
>
> This is based on the assumption that "transparent" really is
> "transparent fail-over". It is also based on the assumption that
> non-transacional resources are used.
>
> If a single server setup fails you will get an exception, and will have
> to re-try the operation. Similarly, if an operation on a bean in a
> clustered server system fails you might get an exception (in the case of
> non-transparent fail-over) and have to re-try.

This is a good point Rickard.  However in a single server system I would
probably retry less often than in a clustered system.  Wouldn't it be better to
let the container handle this?  Also is it always the case that one should
retry on a RemoteException?  RemoteExceptions can be generated in cases other
than server failure can't they?

>
> >4)  In single server mode you can assume pessimistic concurrency is
> >used. In a clustered mode you must assume optimistic concurrency is
> >used.
>
> Yes, since there is no global locking scheme in place. This is an
> important difference that may have serious implications on the
> applications semantics.

And unfortunately Weblogic offers no advice on this.  I am sure many
programmers have relied on pessimistic concurrency for correctness of their
programs.

>
>
> >5) You cannot use dbIsShared=false and take advantage of caching of the
> >entity beans.
>
> Correct, but there may be reasons in non-clustered scenarios that
> disallow the use of dbIsShared. All a matter of system setup. But, the
> important question is, does it impact your code? (at least that is the
> impression that the original question was)

Doesn't impact the correctness but it might impact performance.  So you may be
relying of dbIsShared for performance.  When you switched to clustering if you
relied on dbIsShared=false your might take a big performance hit.  Clustering
is supposed to enhance salability not decrease it.  Perhaps this is another
warning weblogic should give.  Don't rely on dbIsShared for performance if you
plan to switch to a clustered system.


>

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to