jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Klimetschek <aklim...@day.com>
Subject Re: File based clustering of jackrabbit
Date Fri, 13 Feb 2009 11:00:25 GMT
On Fri, Feb 13, 2009 at 6:22 AM, 小川 貴裕 <ogawa@brainsellers.com> wrote:
> Then I have a question about clustering...
> [Q.] Is it possible to operate jackrabbit with file based repository?

No, there is no file based persistence manager in Jackrabbit that
allows clustering.

Shared read/write access to the data needs proper synchronization,
that's why the simple file system persistence manager cannot be used
for clustering. Since filesystem pm is also slow and not very robust
regarding crashes etc., we strongly recommend to use a database bundle
persistence managers.

> I understand that DB based repository is stable, better and strongly
> recommended. But I am not sure it is possible or not.
> (nuance of "have to" is not clear for me...)

have to = must (no nuance at all ;-))

> # We won't introduce another DBMS for our customer ,if possible,
> # to avoid support needs for DBMS settings.
> I think, jackrabbit has its own locking components, so it does not
> depend on locking system of low level layer.
> Assuming no network problem, HDD crash nor sudden shutdown,
> jackrabbit can be operated on clustering servers without DBMS.
> (If these accidents ocuur, user will restore repository from his backup,
> and he will lost some nodes(pdfs) newly registered.
> It is users choice to accept this risk, or not.)

No, if you cluster a file system PM, it will simply not work -
problems will occur during normal operations, since there is no
synchronization between multiple jackrabbit nodes (ie. their PMs)
accessing the same files. This is what the transactional database
would ensure.

Your options are (see also [1]):
- local derby database with bundle db PM but no clustering (default
jackrabbit config, fast + stable)
- bundle file system PM but no clustering (fast, but not so stable)
- transactional database with bundle db PM gives clustering (you can
use postgresql or mysql for popular open-source dbs)

[1] http://wiki.apache.org/jackrabbit/PersistenceManagerFAQ


Alexander Klimetschek

View raw message