I am looking at having to support tens or even hundres of instances of our
web application in an ASP Model.  We use Tomcat as our application server
and it seems to me that three possibilities as a base model for each
physical server

1.  Have a single Tomcat instance per server with multiple virtual hosts
2.  Have multiple Tomcat instances on a single OS instance and host one web
app per Tomcat instance
3.  User virtual servers to host one Tomcat Instance per Virtual OS and host
one web app per Tomcat instance.

As you go down the stack it seems you use more resources per app instance
but get more isolation.

This is really like an SMP at the application level but each application
instance will connect to a distinct database (this is a domain where
crossing the beams would be bad).

Do people really do option #1 in a production environment?  I can figure out
how to set up realms for initialization parameters but it is still a single
class namespace within the Tomcat container, right?  It seems that special
care must be taken with singleton objects (such as the Hibernate Session
Factory) so make sure that they are managed in the context of their Virtual
Host/App Instance.

Are there established practices for doing #1?

Thanks,
John

Reply via email to