Greg, Thanks. The reason I asked this question is: recently I have to convert a unix server into Java solution. My unix server has lots of processes communicated with each other through IPC(domain socket, shared memory) and uses socket to communicate on different machines. It seems that unix server is much easier to scale(there is a debate that process could be scaled better than thread). http://blog.labnotes.org/2006/08/29/why-processes-scale-better-than-threads/ And I can simply kill or start a unix process if one works abnormally. However, in Java, developers use multi-threads(unix also has multi-thread). I just wonder how java server could scale better(not the application server solution).
One more question: When I start two Java processes on the same machine, they work on DIFFERENT VM? Thanks again. ------------------------------------------------------------------------------------------------------ No, in most cases (and with a stock Sun JVM, at the least), two java processes cannot share a VM. There are projects like Terracotta (http://www.terracottatech.com/ [never used it, just heard some buzz about it]) that seem to attempt to unify separate JVM processes into one meta-JVM. Now that you mention it, I think it'd be interesting to see how well MINA in-VM pipe worked on something like that. -Greg Duffy On 9/15/06, Wang Henry <[EMAIL PROTECTED]> wrote:
Two seperate Java processes are still running on the same VM, right? >On Sep 14, 2006, at 5:01 AM, Wang Henry wrote: >> I just wonder if in VM protocol works for two seperate Java >> processes on the same machine. Thanks. >nope. that's why its "in vm" :) >-pete
