hello bertrand.

some notes from my side:

* multi tenant scenario
- what you describe is a solution for the "virtual hosting" multi-tenant 
scenario as described here https://cwiki.apache.org/confluence/x/So2uAg
- if this should be usable for the "massive multi site" scenario as well 
additional requirements like nested tenants should be taken into account as 
well.

* tenant-specific OSGi bundles
- you plan for a solution to deploy tenant-specific OSGi bundles (using the 
amdatu solution or something similar)
- i think this is a very important point, because a tenant concept that only 
supports tenant-specific scripts but no tenant-specific OSGi bundles will 
prevent it to be usable for complex real-world applications
- how do you want to protect against malicious code that may be introduced by a 
tenant-specific bundle? event with a amdatu-like solution you have to grant 
access to a lot of core bundles e.g. providing resource resolver or JCR API, 
and it will be easy for the tenant's code to find ways to get system-wide 
access to all content in the repositories, including that of other tenants.
- are we sure we find ways to protect against this in reliable manner?

* tenant identification
- you propose that the tenant identifier is always the next level below 
/content.
- this is quite inflexible, it should be possible to allow a deeper structure 
to group tenants, and define via configuration or content properties where the 
tenant identification starts
- this is not only useful for a better overview of the tenants, but for 
sharding scenarios as well where different groups of tenants are stored at 
different machines or web centers

* modules/X/content/default
- i do not fully understand this section, how should this work if multiple 
independent modules are used by a tenant, and if the further content structure 
below the tenant identification node is not known (he may have multiple sites 
for example)


stefan


>-----Original Message-----
>From: Bertrand Delacretaz [mailto:bdelacre...@apache.org]
>Sent: Tuesday, January 27, 2015 6:55 PM
>To: dev
>Subject: [RT] Ideas for a multi-tenant and multi-module content model
>
>Hi,
>
>I've been thinking a lot about a content model that would help Sling
>applications be naturally friendly to multi-tenancy and to continuous
>deployment where multiple versions of modules need to coexist.
>
>I have now written those thoughts down at
>https://cwiki.apache.org/confluence/display/SLING/Ideas+for+a+multi-
>tenant+and+multi-module+content+model
>
>Feedback is welcome but please keep in mind that this is mostly just
>thinking outloud at this point.
>
>Credit goes to Dominik Suess for the assemblies idea, it looks like
>this intermediate routing layer might help make sense of complex
>multi-T and multi-M systems.
>
>-Bertrand

Reply via email to