WADI Integration for Jetty
--------------------------
Key: GERONIMO-2163
URL: http://issues.apache.org/jira/browse/GERONIMO-2163
Project: Geronimo
Type: New Feature
Security: public (Regular issues)
Components: Clustering
Reporter: Gianny Damour
Assigned to: Gianny Damour
Priority: Minor
Attachments: geronimo-wadi-integration-preview.patch
Email sent to the dev@ list.
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. Having said that, I have
opened a JIRA such that people can have a look to the integration.
Thanks,
Gianny
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira