jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Clay Ferguson <wcl...@gmail.com>
Subject Re: Using Oak for distributed system
Date Thu, 18 May 2017 14:29:49 GMT
Ioan,
Just my 2 cents worth: Even if the JCR itself doesn't offer the advanced
'disconnected mode' you were looking for, I'd say probably neither do any
RDBMs solutions, so that even if you have to build some of this stuff you
need yourself (in house) then you are still better off building on top of
JCR's capabilities, rather than building on either plain MongoDB or RDBMS
or even other NoSQL solution, becasue the JCR does give you a huge head
start towards what you need as compared to any non-JCR thing.

Best regards,
Clay Ferguson
wclayf@gmail.com


On Thu, May 18, 2017 at 8:40 AM, Ioan Eugen Stan <ieugen@netdava.com> wrote:

> Hello,
>
> I would like to ask for some opinions and get some directions about
> using Apache Oak technology in our products.
>
> Story bellow:
>
> We are building a SaaS system to provide value to our line of business.
> We have our platform up and running for some time and we are growing our
> business.
>
> However we need a sort of CMS as we need to be able to update content
> (pages, texts in reports, legal documents like terms of use and privacy
> policy) without making a new release. Also we have content that needs to
> be translated into a lot of languages and we need to be able to
> coordinate the translation process and sync all the i18n content between
> our system and the translation platform.
>
> I believe that a CMS based on Apache Oak is a very good solution to our
> needs, at least on paper since we don't have any experience with Oak and
> JCR in production systems.
>
> I have attached a sample deployment diagram that I believe we should
> migrate to. Right now we are missing the Sling CMS and Oak repositories
> components. We are storing templates and content on disk and need to
> make a new release to push updates. We can do that quite easy and fast
> as we have an automated deployment pipeline, but the process will be
> greatly improved by using Oak features and a CMS.
>
> I have a lot of questions and I hope I can get some answers. Some of
> them might be more appropriate on the Sling mailing list and I will ask
> them there.
>
> I hope this case will server as a nice use case for using Oak and I plan
> to write some articles with the experience.
>
> We have some services:
>
> Sling CMS Portal - Main entry point in the App. Displays pages and
> portal content. Read/Write access to some content in the repo.
> API Service - API Gateway. Should be able to read/write the Oak repo.
> API for the business rules.
>
> Oak Repository - Store content like: email templates, account/user
> logos, etc.
> Report Rendering Service - Used by API to render PDF reports. Needs Read
> only access to repository. Should work without connection to repository.
>
>
> The amount of content we need to store currently in the Oak repository
> is under 1GB, stored as files.
>
>
> Questions (with numbers to be easy to refer to):
>
> 1. Can we access a single Oak repository from multiple nodes over
> network? I believe so, but please confirm as the docs don't seem to make
> this very clear.
>
> 2. How stable and how is the performance of RDBDocumentStore? We plan to
> use it because we have skills and procedures for maintaining and backing
> up PostgreSQL databases and I would prefer not to complicate the
> deployment with MongoDB. The bulk of analitical data will be stored in a
> separate PostgreSQL instance and not in JCR. We need JCR to display
> pages and some content (email templates, report templates, terms of use
> and legal pages, etc ). It will not have to support millions of hits per
> day.
>
> 3. Can we have synced copies/repository?
>
> We have a service that generates PDF reports: Report Rendering Service.
> We would like to keep the templates and content in JCR but would like
> the service to work without a constant connection to the Oak repository.
>
> The content changes once a day, and Report Rendering Service should work
> without a connection to the repository. However, there might be times
> when we need to force the sync before we deploy a new version of the
> service.
>
> Secondary node seems like the best solution for this use case [1].
> FileVault and ColdStandby features seem to allow for this use case as well.
>
> 3.a Can Secondary Node run disconnected?
>
> 3.b Can Secondary node work with RDBDocumentStore ?
>
> 3.c. In case we can sync the repository and some content is versionable,
> can we select what version to use? I imagine we can with Secondary Node
> solution.
>
>
> [1]
> https://jackrabbit.apache.org/oak/docs/nodestore/document/
> secondary-store.html
>
> [2] https://jackrabbit.apache.org/oak/docs/coldstandby/coldstandby.html
>
>
> Regards,
>
> Ioan Eugen Stan
>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message