As I came across it in the Microprofile discussion about which other solutions based on Java (EE) exist and what they're using, Dropwizard is certainly worth mentioning (on the monitoring side, e.g. Parfait also offers support for it;-)
The configuration package is fairly compact: http://www.dropwizard.io/1.0.0/dropwizard-configuration/apidocs/index.html Most configuration in DropWizard is based on Yaml, and the approach reminds slightly of JCache. No dedicated "config holder" so <T> build() in ConfigurationFactory can be anything depending on what each module needs. ConfigurationSourceProvicer is also extremely small and versatile. It feels a lot like the Loader in Apache DeviceMap that also allows to retrieve device definitions from a local file system, archives, a remote URL or similar. Regards, Werner On Wed, Jul 27, 2016 at 7:00 PM, Werner Keil <[email protected]> wrote: > Whether you call it "Profile" or "Label" (also quite similar in > Jenkins/Hudson btw;-) is somewhat secondary, either one would work and be > flexible enough for pretty much all the necessary dimensions. > > Who plans to initiate the hangout today? > > Werner > > > On Wed, Jul 27, 2016 at 6:11 PM, Anatole Tresch <[email protected]> > wrote: > >> Selection of the right config is imo wqualky the same problem as selecting >> the right backend or container. And exactly since orthogonaliy is a big >> issue their google people came up with a simple but powerful solution: >> labels. That is why in my current proposal the configprovider also gives >> access to a static label map.... >> >> J Anatole >> >> Am 27.07.2016 4:24 PM schrieb "Werner Keil" <[email protected]>: >> >> > Fully agree on a) everyone who at least observed the EE Umbrella over >> the >> > years will understand that;-) >> > >> > I can't speak for vendors (whether or not e.g. Pivotal also wants to get >> > involved, we shall see) interested in a potential JSR. >> > Looking at JCache it left things out that are handled vendor specific >> now, >> > so I would see how far a possible standard wants to specify things. >> Could >> > also start smaller and later add more things. >> > >> > Cheers, >> > Werner >> > >> > >> > On Wed, Jul 27, 2016 at 4:15 PM, Mark Struberg >> <[email protected]> >> > wrote: >> > >> > > 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 >> > > > >> > > >> > >> > >
