Re: Requirements for implementing Cocoon Blocks
Stephen McConnell <[email protected]> Tue, 07 Jan 2003 17:00:11 +0100
| Newsgroups | gmane.comp.jakarta.avalon.apps.devel,gmane.comp.jakarta.avalon.devel |
|---|---|
| Message-ID | <[email protected]> |
Ulrich Mayring wrote: > Stephen McConnell wrote: > >> >> 1. i hate über-container - its missleading >> 2. profile based container solution based on a common architecture >> is a much more useful description >> 3. we can deliver strong webservice support providing we are ready >> lift an Avalon lock-in mentality, and instead, embrace the abstract >> concepts of deployment strategy, assembly, lifecycle, lifestyle, etc. >> 4. backed by a rock solid implementation of the Avalon component >> model >> >> And none of the above is fantasy - its all based on validated code. >> Now, if we prove you wrong are you ready to streak across the Cocoon >> list wearing nothing but a Avalon cap and big grin? > > > I'm not sure which type of container you are talking about. Let me > explain the three types of containers that I can think of: > > 1) The abstract container > > This is a container, that does not do anything by itself, but it can > be profiled to be an application server (like Phoenix), a web > application framework (like Cocoon) and a > <insert-your-buzzword>-container (like Merlin). > > This seems doable to me. However, I don't quite see the userland value > of this. Of course, from a developer's point of view, it's great, > because the code is much cleaner and there is more re-use. But as a > user I still have to decide: do I want to run Phoenix? Or Cocoon? Or > Merlin? A couple of thoughts: 1. differnt users - different concerns - as a site adminstrator I'm interested in a management platform that provides me with a good overview of the system I'm assembling - as system manager I'm interested in runtime integrity, security, performance, monitoring, auditing. As a consumer I'm interested in user level services that the platform makes available to me. As a developer of a comonent I'm interested in the abiliity to off-load my container-side concerns. As a container author I'm interested in a base platform that reduced my code to the business logic and deployment strategies. 2. I'm also aware that I'm twisting your works around a bit here and substituting brands with areas of concern. Phoenix and Melin functionality overlap by about 60%. Merlin Fortress overlap is sort of somewhere between 20 and 80% (doing very similar things for different usage criteria). Cocoon Fortress overlap - my guess about 80% of present needs and 20% of future needs, and Melin Cocoon is sliding in at about 20% of immediate needs and 70% or future needs. Throw in Phoenix Xxxx and your mainly looking at the management end-point. Take away the brands and your left with a bunch of code and the need for a workplan. > > > 2) The über-container > > As a user I don't have to decide between Phoenix, Cocoon and Merlin > anymore and there is no userland duplication of components between > them. There is one container that does everything. This is the > container that I think will never exist. Put it like this and I agree - it will not happen. You cannot be all things to all people all of the time. > > > 3) The wonder-container (sorry, don't have a better name) Zutt - but your comming in real close to runner-up for icky container names just behine the über-thing .... but I understand the jist of where your heading. :-) > > > This is somewhere between abstract container and über-container. It > could run as a distributed application on many servers and the > component developer would deploy his Avalon components into it. Much > like a webhosting ISP deploys various applications like Perl or Apache > into his wonder-container called OS. Sounds reasonable (throw into the sentence "transparent" somewhere close to "distributed" and I'll buy you a beer). > > Then there are applications like Phoenix or Cocoon, which could access > those components. The developer of a Phoenix application or a Cocoon > site would do exactly the same thing to access those components (maybe > in Cocoon wrapped by some XSP taglib). Yep. > >> You don't need give up anyting. >> See below. > > >> How about: >> manages >> |--------------| >> V | >> arbitrary_code --> component ---> container >> ^ | >> |is a | >> |--------------| > > > > This is a very elegant diagram, so I like it by default. I much more comfortable drawing pictures than doing the code stuff. > It looks a bit like the wonder-container, am I right? Yes and no - the above already exists. Now make the assumption that components are implicitly and transparently distributed and throw in meta to support this is a real distributed environment, get into the subject of cross-domain component collaboration and related coordination - and your taking about the something approaching a truley interesting. Put on top of that community backing and something wonder-full. But that's probably too biased on the direction I personally interested in. However, the end-game should be a container platform on which these objective become trivial plug-ins. :-) Cheers, Steve. > > > Ulrich > > > > -- > To unsubscribe, e-mail: > <mailto:[email protected]> > For additional commands, e-mail: > <mailto:[email protected]> > > > -- Stephen J. McConnell mailto:[email protected] http://www.osm.net