• Type: New Feature
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.2
    • Component/s: Clustering
    • Security Level: public (Regular issues)
    • Labels:


      Email sent to the dev@ list.


      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.



        1. wadi-geronimo-integration-preview.patch
          25 kB
          Gianny Damour
          23 kB
          David Jencks
        3. wadi.patch
          26 kB
          Gianny Damour
        4. setUpServers.tar.gz
          2 kB
          Gianny Damour
        5. geronimo-wadi-integration-RTC.patch
          237 kB
          Gianny Damour
        6. geronimo-wadi-integration-preview.patch
          290 kB
          Gianny Damour
        7. GERONIMO-2163-v6c.patch
          243 kB
          Greg Wilkins
        8. GERONIMO-2163-v6b.patch
          245 kB
          David Jencks
        9. GERONIMO-2163-v6.patch
          255 kB
          Gianny Damour
        10. GERONIMO-2163-v5-plus.patch
          289 kB
          David Jencks
        11. GERONIMO-2163-v5-partial.patch
          81 kB
          David Jencks
        12. GERONIMO-2163-v4-old.patch
          255 kB
          David Jencks
        13. GERONIMO-2163-v4.patch
          268 kB
          David Jencks
        14. GERONIMO-2163-v3b.patch
          38 kB
          David Jencks
        15. GERONIMO-2163-v3.patch
          216 kB
          David Jencks
        16. geronimo.patch
          268 kB
          Gianny Damour



            • Assignee:
              gianny Gianny Damour
              gianny Gianny Damour
            • Votes:
              4 Vote for this issue
              2 Start watching this issue


              • Created: