What happens if the server node to which the client is connected crashes? Is there a failover mechanism?
If the server node to which the client is connected crashes, the remote protocol redirects the call to another server node where a new remote object will process the subsequent client calls. The failover mechanism is different for the diffenrent types of beans: – Stateless session beans have no state and their failover is implemented only by redirecting the call to another server node. – Stateful failover serializes stateful bean instances in a persistent storage (the file system or the system database). Thus the last state of the session is replicated. – Entity beans are persisted in the database and that’s why they are synchronized with the consistent data in the database. The entities are locked in the Enque server and then loaded from the database. If a server crashes during an entity bean update, the transaction will be considered as invalid. The next request to the same entity will be dispatched to a working server and the last committed state will be loaded from the database.
Related Questions
- Does the RoboSuite runtime server support load balancing and failover scenarios? Can it spread client requests across multiple servers?
- What happens to the JMS server when a client suddenly crashes? Is the state of a client recoverable?
- What happens if the client is not connected when a patch is deployed?