IMHO é quase sempre melhor usar os meios de replicação dos próprios aplicativos.
No seu caso, este será um software baseado em Java em execução no servidor de aplicativos Glassfish.
Portanto, se o seu aplicativo puder ser armazenado em cluster (ou seja, ele deve usar as chamadas java corretas para habilitar o glassfish para replicar as informações de estado), use-o.
Não tenho certeza sobre o Glassfish, mas com o Tomcat 5.5 o método foi chamado de serialização.
Esteja ciente de que você precisa usar algum tipo de balanceamento de carga na frente do Glassfish para poder fazer o failover de forma transparente (normalmente um service-ip ou dois).