Hi,

I have been working on a second integration attempt of WADI and I am posting here a high-level description of the current state of progress such that people can jump in.

At this stage, this is a Jetty only attempt and I do believe that the same approach can be applied for Tomcat. The current integration provides (very unreliable) HttpSession state migration. It only works for a single Web-application; more effort is required on the WADI side to support multiple Web-applications and this will not impact the integration piece of code. I (more or less successfully) tested the integration with mod_proxy + mod_proxy_balancer and mod_proxy + mod_rewrite in front of three Geronimo servers running the WADI demo web-app.

The code changes are:
* new module to capture some clustering contracts – geronimo-clustering: there Node, SessionManager, Session and ClusteredInvocation are defined. * new module to provide a WADI implementation of the above – geronimo-clustering-wadi; * new module to capture clustering builder contracts – geronimo-clustering-builder: there is only one interesting interface JettyClusteringBuilder. This later defines a couple of methods to augment the environment of a Web module being built and add clustering specific GBeans; * new module to provide a WADI implementation of the above – Geronimo-clustering-builder-wadi; and * geronimo-jetty-builder and geronimo-jetty are impacted to hook in clustering. These two modules depend on geronimo-clustering and geronimo-clustering-builder and not on WADI specific modules.

Two new modules are added:
* jetty-clustering- wadi: this module defines default WADI GBeans such as Dispatcher, ReplicationManagerFactory, BackingStrategyFactory et cetera; and * jetty-clustering-builder-wadi: this module defines a builder to process Jetty DD and add various GBeans to the module being built.

I think that the implementation is flexible enough to plug in another clustering implementation such as Kache.

As a matter of fact, there are some severe reliability (e.g. locking issues) and integration (only one Web-app can be clustered) issues, which need to be fixed. So, this work is not yet ready to be RTC voted and I do not think that it will before a couple of weeks. Having said that, I have opened a JIRA (http://issues.apache.org/jira/browse/GERONIMO-2163) such that people can have a look to the integration.

Thanks,
Gianny


Reply via email to