I tried to do some searching on a query from a friend of mine. If suppose I run multiple instances of a java program (same or different) will there be single or multiple instances of JVM running, assuming all these setup being on the same macine.
I feel that there will be multiple instances of JVM as we specify JVM congigs seperately during program launch.
Pradeep Kadambar
Ranch Hand
Joined: Oct 18, 2004
Posts: 148
posted
0
If it were to be running on the same JVM .... can we achieve better memory management for the machine.
A JVM will be initialized whenever someone (script/command line/process) calls the following executable: <jdk_root>/bin/java with a valid fully qualified class name.
Yes, any time you start java.exe (or whatever on *nix) you get a new JVM. This is both good and bad. They are isolated from one another, so if one gets into memory trouble or completely crashes the others keep running. But it takes significant time and memory to start a JVM so it might be nice to run multiple "applications" in one JVM. There are some schemes to do the latter, but the challenges of keeping them properly isolated are many. They might want to run different versions of the same jar or put class paths in different orders or any number of oddball things.
Do you have a particular problem situation in mind? A server that seems to be running a lot of JVMs?
A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to
run our stuff on 16 servers instead of 3.