[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [dist-obj] Fw: [dist-obj] Why use Application Servers?



Roger Sessions wrote:
> 
> Anne writes...
> > If you are concerned about scalability, then I recommend that you get an
> > application server that supports share object caching -- this technology
> > (essentially using an in-memory object database in the middle tier) will
> > allow an application server to support hundreds of thousands of concurrent
> > users. Examples are Secant Extreme, Persistence PowerTier, GemStone/J, and
> > application servers that support eXcelon Javlin and Versant Enterprise
> > Container.
> 
> I think caching in the middle tier could work if it was done correctly, but
> to the best of my knowledge, none of the major EJB vendors do it correctly.
> In other words
>
> - they don't notify the cache if an outside application updates the database
> - they don't have a mechanism for cross machine middle tier cache coherency
> (between the same EJB vendor working on two machines)
> - they don't have a mechanism for cross EJB cache coherency (between two
> different EJB  vendors)
> Without such mechanisms, I see object caches as creating a high risk of
> database corruption. If people are interested in this issue, I discussed it
> in the ObjectWatch Newsletter #24 www.objectwatch.com/issue_24.htm

Your knowledge may be somewhat out of date with regards to the EJB
vendors.  I know that both Persistence and GemStone have cross machine
cache coherency.  I believe Persistence also has a framework for
updating the cache in the face of outside database updates based on
triggers and TIB/Rendezvous.  GemStone may well have something similar,
but I don't know for sure.

Kevin

==========================================================================
To manage your subscription, mailto:dist-obj-help@distributedcoalition.org 
Archives, FAQ, etc.     http://www.distributedcoalition.org/mailing_lists/