-
Carbon AS CE IOC-JMX Architecture Design V 0.2 available (7 messages)
- Posted by: Carbon AS
- Posted on: February 08 2007 11:27 EST
Carbon AS Community Edition's architecture design has been released. Carbon AS Community Edition is a JMX compliant Open Source J2EE Application Server project initiated by Aquosine. Carbon AS Community Edition is going to be released under LGPL and is free to use, modify and distribute. Aquosine is an open standards based solutions provider. Carbon kernel is basically an IoC container that starts, stops (manages lifecycle) and injects dependencies among services. All services are required to implement CarbonBean interface in order to receive lifecycle callbacks. The server components and the server itself are managed through JMX. The server will boot up by reading carbon-config.xml file which contains the required server configuration information and starts the JMX server which will inturn start the carbon IoC container/kernel. IoC container and JMX Server will read the carbon-profile.xml file which contains CarbonBean and MBean configurations, to start the services and register them in the Service regsitry and JMX registry respectively. Immediately after launching these services (or any other service) kernel generates all their dependencies and injects them (don't forget that kernel really injects proxies at that point to referenced services). The ASM-based interceptors will be used to implement the proxies. The interceptor layer will act as the kernel bus which will handle events, security, logging, clustering services. The Kernel needs to know what methods are publicly exposed by services. Proxies only implement these services, so services will have to manifest this behavior explicitly. This meta information will be written in xml, annotations (Java 5+) or statically. Also an initial state will be defined here. Services will be able to communicate with each other(instances) because they contain a kernel context instance (injected when service started). The architecture design v 0.1 and v 0.2 can be found at the following links: http://aquosine.com/wiki/images/IOC-JMX_Arch_V-0.2.jpg http://aquosine.com/wiki/images/Interaction.gif http://aquosine.com/wiki/images/Layers.gif Road Ahead: -To implement custom micro IOC Container. -JAAS/JAAC based security -Jini/Javaspaces clustering -Axis integration -ESB integrationThreaded Messages (7)
- What's the Secret Sauce? by Greg Zoller on February 08 2007 14:58 EST
- Why reinvent the wheel by Neil Pennell on February 08 2007 19:36 EST
- Re: Why reinvent the wheel by Carbon AS on February 08 2007 11:47 EST
-
Re: Why reinvent the wheel by Geir Hedemark on February 09 2007 04:59 EST
-
Re: Why reinvent the wheel by Bill Burke on February 09 2007 07:57 EST
-
Spring support on Carbon AS by Carbon AS on February 10 2007 01:03 EST
- Spring support on Carbon AS by Carbon AS on February 10 2007 03:52 EST
-
Spring support on Carbon AS by Carbon AS on February 10 2007 01:03 EST
-
Re: Why reinvent the wheel by Bill Burke on February 09 2007 07:57 EST
- Why reinvent the wheel by Neil Pennell on February 08 2007 19:36 EST
-
What's the Secret Sauce?[ Go to top ]
- Posted by: Greg Zoller
- Posted on: February 08 2007 14:58 EST
- in response to Carbon AS
I read the blurb and it all sounds good, but isn't that more or less JBoss? What will Carbon AS's new twist on application servers be? -
Why reinvent the wheel[ Go to top ]
- Posted by: Neil Pennell
- Posted on: February 08 2007 19:36 EST
- in response to Greg Zoller
If it was built on top of an OSGi implementation (knopflerfish.org or eclipse.org/equinox) might prove to be a novel and fruitful approach. -
Re: Why reinvent the wheel[ Go to top ]
- Posted by: Carbon AS
- Posted on: February 08 2007 23:47 EST
- in response to Neil Pennell
We are working on the OSGi ports based on Equinox/Felix for Carbon AS. Our primary attention at the moment is to enable clustering and it is going to implemented through Jini/Javaspaces. -
Re: Why reinvent the wheel[ Go to top ]
- Posted by: Geir Hedemark
- Posted on: February 09 2007 04:59 EST
- in response to Neil Pennell
If it was built on top of an OSGi implementation (knopflerfish.org or eclipse.org/equinox) might prove to be a novel and fruitful approach.
Spring is doing this in version 2.1. My biggest question is why Carbon instead of the market leader Spring? -
Re: Why reinvent the wheel[ Go to top ]
- Posted by: Bill Burke
- Posted on: February 09 2007 07:57 EST
- in response to Geir Hedemark
Spring does not have messaging, transactions, persistence, clustering, etc... All the services that do middleware's heavy lifting. A better question might be: how can Spring-based applications integrate with Carbon AS? BillIf it was built on top of an OSGi implementation (knopflerfish.org or eclipse.org/equinox) might prove to be a novel and fruitful approach.
Spring is doing this in version 2.1.
My biggest question is why Carbon instead of the market leader Spring? -
Spring support on Carbon AS[ Go to top ]
- Posted by: Carbon AS
- Posted on: February 10 2007 01:03 EST
- in response to Bill Burke
Spring is coming up with OSGi enabled version Spring-OSGi. We will be evaluating that to provide Spring support for OSGifed Carbon AS. Whereas in case of traditional JEE application, Tomcat is our default Web Conatiner and you can deploy Spring applications directly into Tomcat container like any other JEE applications. -
Spring support on Carbon AS[ Go to top ]
- Posted by: Carbon AS
- Posted on: February 10 2007 03:52 EST
- in response to Carbon AS
Spring has come up with OSGi enabled version Spring-OSGi. We will be evaluating Spring-OSGi to provide Spring support for OSGified Carbon AS. Whereas in case of traditional JEE application, Tomcat is our default Web Container and you can deploy Spring applications directly into Tomcat container like any other JEE applications.