a.) Oracles 'cloud' and 'multi tenancy' efforts so far has been fully fledged 
bullshit bingo. Hot air, not much else. None of that stuff remotely worked out. 
And that was clear as glass even back in 2011. You might remember a JAX 
interview from that time where I predicted exactly that. And as predicted it 
got pulled from EE7...


b.) Any 'environment', projectstage etc lookup path can easily be handled on 
top of any core config mechanism.
It's basically a fallback chain which everyone can wrap into 5 lines of custom 
code. 

And the main point: how the fallback chain looks like exactly is different from 
customer to customer.

We might address this in the tamaya specific api, but I would leave this out 
from the JSR proposal part.

LieGrue,
strub





> On Wednesday, 27 July 2016, 15:57, Werner Keil <[email protected]> wrote:
> > Guys,
> 
> I briefly mentioned that to Anatole and maybe we get a chance to talk about
> it in today's hangout, but since not many seem to be available today, let
> me give you a brief overview here.
> 
> Java EE 7 already had some high hopes and goals for "multitenancy", so
> Thomas Kurian's announcement that Java EE 8 should support that to be 
> "fit
> for the Cloud" isn't entirely new. As other wishes expressed in the EE
> Umbrella EG like more than just 2 profiles, etc.
> 
> One comparison of early configuration tools Anatole had in his slides is
> remarkable, as it was done in 2004, when even Spring was still in its
> infancy and Web Services meant either nothing or SOAP. The Agile Manifesto
> also was fairly recent and Agile only started to be discovered.
> http://www.mail-archive.com/[email protected]/msg37597.html
> 
> It pointed out, JFig as one of the first had the notion of "config"
> 
> Allowing different config files to be loaded dependent on the
> environment they are in i.e. development, test, uat or production.
> 
> I don't think Commons Config has introduced with V2, but e.g. Netflix
> Archaius built something around it based on a "DeploymentContext".
> 
> Spring has the @Profile (probably inspired by e.g. the same term in Maven
> builds) which is a pretty lose term but is often used for staging.
> 
> DeltaSpike knows a ProjectStage slightly more flexible than e.g. JSF until
> now, but that's about it.
> 
> However, modern enterprises and projects especially if they practice rapid
> development and delivery need more than that.
> 
> The Environment or "Profile" dimensions contain at least 3 dimensions:
> 
>    - Tenant (not only Customer, can be Project, Service, etc.)
>    - Stage (Dev, Test, UAT, Prod,...)
>    - Version (can be Sprint, Iteration, Week,...)
> 
> Some cases also may have other needs e.g. "architecture", or similar, 
> in a
> Web based server
> At least a single construct should be there to tell them apart. Whether
> it's @Profile("tenantA_v2_uat") I'd say in Spring this can be 
> modeled using
> the profile.
> 
> A combination of stage and version I guess could be done with DeltaSpike's
> ProjectStage, but it would stretch it very far to apply the same to a
> tenant, product or service.
> Guess a framework, API or standard really capable of multi-tenancy should
> find a different term.
> 
> Regards,
> 
> Werner Keil | JCP Executive Committee Member, JSR 363 Co Spec Lead |
> Eclipse UOMo Lead, Babel Language Champion | Apache Committer
> 
> Twitter @wernerkeil | @UnitAPI | @JSR354 | @AgoravaProj | @DeviceMap
> | #DevOps | #EclipseUOMo
> Skype werner.keil | Google+ gplus.to/wernerkeil
> 

Reply via email to