I'm trying to wrap my head around Deployment Model 3: Repository Server.
Can anyone confirm that my understanding is accurate?  My understanding
is that there are two ways to access a repository remotely: RMI and
WebDAV.  If you want to use the JCR API, you use RMI.  Otherwise you use
WebDAV.  But by using WebDAV, you lose access to the low level node
operations that you would otherwise have access to in the JCR API.

Let's assume that I need access to the low level node operations.  So I
opt for RMI.

However, there is a statement on
http://jackrabbit.apache.org/repository-server-howto.html that says:

"Warning: The current JCR-RMI library is designed for simplicity, not
performance. You will probably experience major performance issues if
you try running any non-trivial applications on top of JCR-RMI."

Does performance suffer because each and every node operation (e.g.
addNode and setProperty) involves a communication with the server?

In this case, it seems that the best option is to expose my own service
(backed by a local Jackrabbit) for remote access.  In this way, there is
far less communication with the remote service (i.e. my service) since
my objects would be far less granular than nodes.

This is probably obvious to most but it took me a while to figure it out
what my options were.  Can anyone comment?  Thank you.

Reply via email to