jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Guggisberg <stefan.guggisb...@gmail.com>
Subject Re: process boundaries
Date Tue, 11 Sep 2012 15:23:31 GMT
hi marcel

On Mon, Sep 10, 2012 at 12:33 PM, Marcel Reutegger <mreutegg@adobe.com> wrote:
> hi all,
> while looking through the oak code and also in light of the
> recent MongoDB based MicroKernel, I was wondering where
> the process boundaries are. right now with the maven build
> everything runs in the same process, which is one possible
> deployment option. I guess as soon as we have some
> alternative MicroKernel implementation that scales well, we
> will probably also think about scaling the application on top
> of oak. the most obvious solution is to just run the application
> multiple times in separate processes and they all connect
> to the oak repository.
> there's existing information on that topic, like the stack
> with the different layers [0], however it doesn't talk about
> where the process boundaries are and where we'd need
> a protocol (except for the top level protocols to access
> the content through JCR or the Oak API directly).
> so, the question I have is basically about oak-core. is it
> intended and designed to run in multiple processes and
> access a single MicroKernel instance? that way an application
> running in multiple processes would embed an oak-core,
> which talks to the MicroKernen. Or is it rather intended
> that oak-core runs in a single process and all clients
> connect to that single instance?

IIRC the latter should be the standard client/server deployment.

applications use the JCR API to access the repository.

the JCR API is exposed by oak-jcr. oak-jcr implements
the JCR transient space and talks to oak-core for read/write
and workspace operations (ns reg, node type reg, access control,
versioning, query etc).

the obvious process boundaries are

1) between oak-jcr and oak-core (remoting of the oak-core API)
2) beween oak-core and oak-mk (remoting of the MicroKernel API)

there's a related jira issue, see [1].


[1] https://issues.apache.org/jira/browse/OAK-162

> regards
>  marcel
> [0] http://wiki.apache.org/jackrabbit/OakComponentStructure

View raw message