opencms days 2016: next generation content repository

31
Alexander Kandzior and Stephan Hüwe, Alkacon Software Showcase Track Next generation content repository 26.09.2016

Upload: alkacon-software-gmbh-co-kg

Post on 19-Jan-2017

75 views

Category:

Software


0 download

TRANSCRIPT

Alexander Kandzior and Stephan Hüwe, Alkacon Software

Showcase TrackNext generation contentrepository

26.09.2016

JAR

Separation of App and Data NOW2

JAR

Separation of App and Data GOAL3

Scaling in the cloud

Efficient Permission settings

5

Reconsider Database requirement

6

Infinispan / ModeShape evaluated

Release Notes for ModeShape 5.0.0 FinalModeShape 5 no longer uses Infinispan and provides instead its own persistence stores.

JCR Shootout

Apache

Jackrabbit Oak

And the winner is…

9

Integrating OpenCms with Oak

● Already done:● Store resources in repository with properties● Online / Offline parts and publish functions● User / Group management● Version history● Permission management

● Challenge:● Stay near to OpenCms API

Integrating OpenCms with Oak

● Live Demo

OpenCms on Oak

Demo

DEMO DemoDemo

デモ

OpenCms on Oak

Oak Persistent Stores

MongoDBFile System MySQL MongoDB Replica Set

● OpenCms “Classic“ Repository● Based on RDBC ● MySQL (most often) + all others with JPA

● OpenCms “Next Generation” (NG) Repository● Based on Oak / JCR 2.0● Using what Oak offers us as persistent store

Next Generation OpenCms

What about performance?

● Experimental Setup:

● Variables:

Performance Tests

small

medium

largeFolderstructure depth of 8Average File Size: 1 MB

Binary data

Read by path

Read by id

Check if exist by path

Check if exist by id

Check permission

~kB

~MB

~ 100 MB

Repository Size: up to 25 GB

Repository Type:NG: MongoDB,File System, MySQLClassic: MySQL

Accessed by:User, Admin

Performance Test Results

Performance Test Results

Performance Test Results

Performance Test Results

Performance Test Results

AdminUser

Performance Test Results

Scaling NG in the cloud

● OpenCms NG Docker Container:1 Tomcat Instance + 1 MongoDB

Scaling NG with docker

MongoDBReplica Set

• Offers scalability• Fast reaction on high traffic possible

Demonstration setup

MongoDBReplica Set

Localhost 808127001

808227002

808327003

808427004

TomcatMongoDB

● Live Demo

OpenCms NG Cloud Setup

Demo

DEMO DemoDemo

デモ

OpenCms NG Cloud

● Basic OpenCms functionalities in place● Store / read / edit resources● Publish items and on- and offline projects● User and permission handling● Version history

● Cluster set-up with docker makes it scalable

● Performance so far very good

Summary

● The NG repository will be made available as part of a new “OpenCms NG” version

● Two OpenCms versions available in parallel:● OpenCms “Next Generation”● OpenCms “Classic”

● The workplace / GUI will be (mostly) the same

NG Repository Roadmap

● OpenCms 11 “Classic” will contain an Interface for API methods in OpenCms NG● Other methods will be deprecated in 11 ● Expected: Q4 of 2017

● OpenCms NG target release is 1st half of 2018

NG Repository Roadmap

● Any Questions?

Any Questions?

Fragen?QUESTIONS ?

Questiones?¿Preguntas?質問

Alexander KandziorStephan HüweAlkacon Software GmbH

http://www.alkacon.comhttp://www.opencms.org

Thank you very much for your attention!