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

Re: client-side persitence



On Thu, 02 Dec 1999, Johann Romefort wrote:
> Hi,
> 
> >From what I have understood about Ozone, the proxies&RMI
> part is mandatory. One of the main concept of Ozone is that objects
> never leaves the database, and are manipulated throught their remote
> reference. So the only way to use an Ozone object is to use its proxy,
> that's one of the reasons for which you absolutly need Ozone-RMI.
> Your question is very interesting, and lead to the question of knowing
> if there a way to optimize Ozone-RMI calls when calls happens to be
> in the same VM, like it is done in JEREMIE
> (http://www.objectweb.org/en/jonathan/index.html)
> for example. Falko?

Johann is totally right when saying that proxies and RMI is mandatory in ozone.
The point is that ozone uses RMI not primarly for communication. It uses RMI to
make the persistence stuff as transaparent as possible to the programmer! We
are just evaluating Objectivity a bit. This database need explicit fetch()
calls in each method! This is something you don't need in ozone. 

The best way to optimze in-VM calls is to not copy method parameters as it is
done currently. This would let RMI calls be nearly as fast as normal method
calls. The huge drawback is that this would changes the behaviour (the
semantics) of an in-VM against extra-VM calls. This in turn could lead to bugs
that are very hard to find. This is the reason why most of the EJB servers
decided to not provide this option although it is very easy to implement.

However, a good application architecture that is aware of the ozone
architecture reduces (or even eliminates) the need of such tricks anyhow. Such
a good architecture runs much of the application logic that deals with the
database inside the server which reduces the number of 'slow' RMI calls.


Falko

 > 
> Regards,
> 
> Johann
> 
> >
> > Hello,
> >
> > Our group plans to use ozone to provide persistence for a desktop
> > application. So rather than using Ozone client/server, the database will
> > only operate within a single process. My question is, do proxies & RMI
> > still need to be used? It appears to me that there will be a significant
> > performance penalty relative a situation where database objects could be
> > used directly.
> >
> > Your input here is much appreciated.
> >
> > Thanks,
> >
> > Marcos
> >
> > --
> > Marcos J. Polanco       Imana, Inc.
> > 415.436.9700 tel        480 Potrero Ave.
> > 415.436.9793 fax        San Francisco, CA 94110
> > marcos@imana.com        http://www.imana.com
> >
> > "Cogelo suave, pero cogelo."
> >
-- 
______________________________________________________________________
Falko Braeutigam                         mailto:falko@softwarebuero.de
softwarebuero m&b (SMB)                    http://www.softwarebuero.de