Yes, you can run with on 512MB of RAM. As long as you don't care about performance and will have only, at most, a handful of users. I ran JBoss AS on a laptop with only 512MB once. It was not that much fun. ;-)
The wiki formula is probably a better bet. Typically, I prefer 2GB of RAM to run a single instance of JBoss AS, usually using about a 1.2GB heap. That should run a large number of user (hundreds or thousands, depending on the level of activity).
If you have fewer users you can get away with less RAM. I am running JBoss Portal for our department on a system with 1GB RAM. That system also hosts the MySQL database used by Portal. But then our users number in the tens, and activity is very low.
Thank you for your insight, Peter.
Currently, we are planning on going vmware. Each of our vmware image will have 2 gig of ram assigned to it. We are trying to figure out just exactly how many instances of JBoss AS we can run on each of these images. Assuming that we have each JBoss instance set to run at 400-500mb of max heap size, we have figured that we can probably run two instances on each image. Now given the formula presented, we are putting away 500mb for misc jvm operations. If we run two instances, will that misc number have to double?
No, it will not have to double. A lot of that 1/2 GB is for the JVM code and the operating system is smart enough to shared the code between Java instances. Thus while the first instance will use up a lot of memory, a second instance will not use as much additional memory. Based on your heap size, you should be able to run two JBoss AS instances in 2GB of memory.
Sounds great. That makes perfect sense. Thank you for your help, Peter!