tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Will England <w...@mylanders.com>
Subject Re: Multiple Unique Instances WITHOUT multiple JVM?
Date Tue, 24 Apr 2001 18:06:10 GMT
On Tue, 24 Apr 2001, Sam Newman wrote:

> I think there is a simpler solution. Firstly, have one web app. Secondly,
> have a database (could even be an encyrpted text file) containing user
> information.

That, unfortunately, wont work.  Each customer has many users.  Each
customer also has many proprietary data files that only the users of that
customer can see.  Each customer requires a virtual host
(customer1.ourhost.com).  The codebase is already written based on having
only one customer per machine.  Now the spec has changed, and they want
multple customers per machine.  

Each customer needs custom configuration data read into a class, and the
class may or may not be running under a servlet.

The idea is to put out multiple WEB-INF directories with customer-specific
config data, images, binary files, etc.  Then, have the config set up like
such:


apache config:

<VirtualHost>
ApJServMount /servlet ajpv12://host.server.com:8007/servlet/customer1
</VirtualHost>

<VirtualHost>
ApJServMount /servlet ajpv12://host.server.com:8007/servlet/customer2
</VirtualHost>

and so on, mounting each virtual host to a different entry in the
server.xml on one JVM.

server.xml

<Context  
   path="/servlet/customer1" 
   docBase="/webhome/customer1" 
   debug="0" 
   reloadable="true">               
</Context>

<Context
   path="/servlet/customer2"
   docBase="/webhome/customer2" 
   debug="0" 
   reloadable="true">
</Context>

Each <Context> would have its own unique WEB-INF directory that could
contain the web.xml file and other text files with configuration data.

Is this going to work at all?

Can one JVM manage multiple WEB-INF directories?  

All library classes will be in the main class repository; only config and
binary data will be stored in the WEB-INF directory for each customer.

Thanks again for pointers, tips, etc...

Will



> ----- Original Message -----
> From: "Will England" <will@mylanders.com>
> To: <tomcat-user@jakarta.apache.org>
> Sent: Tuesday, April 24, 2001 4:42 PM
> Subject: Multiple Unique Instances WITHOUT multiple JVM?
> 
> 
> > Greetings!
> >
> > Here's what we want to do:
> >
> > We want to host our new servlet product as an ASP.  Each customer of ours
> > would get a unique configuration for the product.  However, all of the
> > servlets would run from one code base.
> >
> > We'd have the classes here:
> >
> > /webhome/classes/com/ourcompany/server/product
> >
> > and each customer would have their own WEB-INF:
> >
> > /webhome/customer1/WEB-INF/
> >
> > Each customers servlets would be mapped like this:
> >
> > /servlet/customer1/user
> > /servlet/customer1/inventory
> > /servlet/customer1/checkout
> >
> > And the second customer:
> >
> > /servlet/customer2/user
> > /servlet/customer2/inventory
> > /servlet/customer2/checkout
> >
> > user, inventory and checkout would all point to the same set of classes up
> > in /webhome/classes.
> >
> > I know this is simple to do, if you are willing to spin up a new JVM for
> > each customer / virtual host.  However, with one box and 30 customers,
> > that'd be right memory intensive.
> >
> > Questions:
> >
> > 1) Will this even work?  Has anyone done this before?
> >
> > 2) How can we get different config files for each customer without
> > explicitly referring to them as init-params in the web.xml file?  (we need
> > to be able to get the config from non-servlet aware classes).
> >
> > Thanks in advance for any tips; ask me if you need any clairification.
> >
> > Will
> >
> > --
> >   "If Al Gore invented the Internet, then I invented spellcheck!"
> >       Dan Quayle, quoted at the National Press Club, 8/3/1999
> >                           will@mylanders.com
> >   Recovery  : http://will.mylanders.com/         PCS:  316-371-FOAD
> >
> 



Mime
View raw message