Linda,
Overall, this is a good start. At the same time though let me state
up-front two concerns:
Firstly, I hope all of this is implemented in away that does not effect
developers of simple applications that do not require cloud support and
never will. Secondly, I hope the cloud support does not take up so much
bandwidth for the Java EE 7 JSRs that more mundane but equally/more
important things get put in the back-burner.
Specific comments on the document:
* I was left wondering about the specifics of how a tenant ID get's
established in the first place. While it might not be possible to spec
that out completely, it might be a good idea to have some guidelines so
that vendors don't diverge far beyond effective future collaboration.
* I think it is best not to make cloud support the default platform
behavior but rather something that is enabled specifically. If this
really becomes cumbersome in the future because a majority of
applications are on the cloud, we can always make it the default later.
Going the other way round if cloud computing turns out to be just
another over-hyped, vendor-driven bust with limited practical
applicability is going to be difficult I think.
* I prefer readable Java identifiers to abstruse UUIDs :-).
* I definitely think cloud support should be optional or at least not
added to the Web Profile.
* It's difficult to make a call on ignoring the cloud settings without
looking at the overall cloud solution in detail. For now, I would say
implementations that do not support the cloud should simply ignore the
cloud settings. This would also make development on local machines that
need not support the cloud easier while the application can maybe later
deployed to a cloud enabled server for testing, production, etc.
* Multi-tenancy comes in a very wide array of facets -- the same
application deployed to different machines with tenant-specific
configuration talking to a tenant-specific database, Multiple tenants
using the same application but going to tenant-specific databases,
multiple tenants using the same shared database, and so on. It would be
important to get those details hashed out centrally and propagate it to
the different JSRs as opposed to different JSRs coming up with their own
solutions. In this case, if we don't do that chaos might ensue :-).
Hope this is helpful.
Cheers,
Reza
On 5/25/2011 2:24 PM, Linda DeMichiel wrote:
> Greetings,
>
> As described in our JSR proposal,
> http://jcp.org/en/jsr/proposalDetails?id=342,
> the main theme for Java EE 7 is enabling the Java EE Platform for use
> in the cloud.
>
> We'd like to kick off our technical work with a discussion of what is
> entailed in terms of the Java EE 7 Platform's support for the Platform
> as a Service model (PaaS) and support for multi-tenancy.
>
> As a starting point, we've prepared the attached document to facilitate
> the discussion. This document addresses several aspects that need your
> consideration:
>
> - It attempts to establish a common terminology for our discussions;
>
> - It attempts to characterize how the "roles" distinguished by the
> Java EE Platform might be expanded to support PaaS;
>
> - It describes a variety of PaaS scenarios that we believe we should
> support;
>
> - It expands upon the issue of multi-tenant use of PaaS applications in
> terms of support for a limited form of SaaS, and what might be
> entailed
> by support for such use.
>
> We would appreciate if you would review this document in detail and post
> your feedback -- both on the general direction indicated, and on the
> specifics. There are also a number of issues flagged in the text. We
> realize that some of these will require further exploration in order
> to be resolved, but of course please feel free to post feedback on any
> of these as well.
>
> thanks,
>
> -Linda
>
>
> -----
> No virus found in this message.
> Checked by AVG - www.avg.com
> Version: 10.0.1375 / Virus Database: 1509/3659 - Release Date: 05/25/11