The VM transport allows clients to connect to each other inside the VM without the overhead of the network communication. The connection used is not a socket connection but use direct method invocations which enables a high performance embedded messaging system.
The first client to use the VM connection will boot an embedded broker. Subsequent connections will attach that the same broker. Once all VM connections to the broker have been closed, the embedded broker will automatically shutdown.
In-VM local transport allows TCP loop-back like SOAP communication between the client and the server in the same virtual machine. It is primarily designed to enable testing of web service endpoints without using a fully-fledged web container.
It is important to realize that InVM achieves its performance benefits by optimizing the internal data structures that are used to facilitate communication between services. There are a number of limitations that are discussed below that must be taken into account when deciding to make use of this transport.
The major limitation is that the queue used to store messages is not persistent. If the service is shutdown or otherwise fails before the queue is emptied, then those messages will be lost.