Hello all,
I'm running a website on a single server configuration. My goal is to
get all of our components running in one VM. Part of this goal is to
maximize the limited RAM we have by allocating one giganzo JVM heap,
reduce Java process contention for OS scheduling, and limit the need for
remote EJB calling when I want to invoke components, say, from a mailet
into some deployed EJB's I've got. If everything is deployed on one VM,
theoretically, I should be able to do local EJB calls.
My J2EE server is Geronimo 1.1, I'm launching hypersonic DB from within
Geronimo, and now I'd like to be able to deploy James as an EAR that can
gracefully startup and shutdown with Geronimo - a servlet could manage
the James lifecycle via the init() and destroy() methods. (If James
doesn't support shutdown without JVM shutdown, then that's a feature
that I would like to see added to James as well.) I envision the
startup/shutdown order within Geronimo would be:
1. Hypersonic DB
2. My Shared Components (custom EJB's, J2C connectors)
3. James + Mailets (using Hypersonic DB)
4. My Application
In the future, I imagine the Apache DNS and LDAP Directory server could
also be deployed in Geronimo as well once I feel like it's ready for
primetime, probably started between 1 and 2.
Since there seems to be a lot of active development in both Geronimo and
James right now, I thought now would be a good time to throw in my $0.02
and make the request. For the time being, I will deploy James in a
separate VM, (but with far fewer system resources than it would get if I
could launch it within Geronimo.)
Cheers,
Dave Woldrich