I've got a problem. I have to host many (hundreds, 100s) of small identical JAVA web programs which have different loads throughout once. I wish to use Glassfish V3. Should i make use of a load balancer and groupings or something like that else? Advise how can i learn more about similar problems as well as their solutions...

Sincerely, Alexey.

I have to host many (hundreds, 100s) of small identical JAVA web programs which have different loads throughout once.

For 100s of webapps, you'll most likely need several application server instance. But this sounds odd to tell the truth.

I wish to use Glassfish V3. Should i make use of a load balancer and groupings or something like that else?

At this time, GlassFish v3 offers only fundamental clustering support using mod_jk (i.e. no load balancer wordpress plugin, no centralized admin, no high availibility). If you're interested, take a look at this note that describes the configuration steps of GFv3 and mod_jk.

For centralized admin and clustering, you will need to watch for GlassFish 3.1 (begin to see the GlassFish Roadmap Community Update 35mm slides).

You can take a look at Gigaspaces. I've come across it used along with Mule for any somewhat similar project. ESBs are usually overkill for me, however it seems like you've quite the job to overcome.

  1. Depending on your needs, you can't do load balancing because the load is predetermined through which client the request is perfect for. Each request needs to visit the application handling that client, therefore it can't be distributed outdoors the group of applications devoted to that particular client.

  2. You should use multi-threads. you can setup the configuration to ensure that different threads handle different clients. However, it may be easier to only have a server that may handle demands from different clients. In line with the client sent using the request, it might be sent to another database etc.