High – Available Enterprise JavaBeans Using Group Communication System Support

The Enterprise JavaBeans (EJB) architecture provides a structure to build scalable and distributed applications, based on transactions. Despite of the transactional service, if the server crashes, the EJB will be unavailable. The EJB could be recovered when the server restarts up. Its availability is restricted. High– available systems require fast recovery time that can be easily implemented using replication: if the current replica crashes there is another to replace it. Replicas require special protocols to synchronize them and group communication provides suitable primitives to develop reliable distributed applications as well synchronizing replicas even in presence of failures and client’s concurrent access. Although these computational models (group communication and transactional, that the EJB follows) are claimed to be opposite by some authors, others agree that it can be matched. In this paper we will show how a group communication system can allow an efficient and high–available EJB service using replicas. The replication approach is totally hidden to users and we expect to reduce the replication overhead using appropriate design decisions.