I am trying to setup a JBoss cluster on Amazon's EC2 network using 3 of their large instances (2 JBoss nodes, 1 DB) and an elastic load balancer.
I am starting both jboss nodes in the the all configuration with jgroups set up to use S3 ping rather than multicasting. This appears to work well with the logging indicating that the nodes are seeing each other and farm deployment working perfectly.
The problems come when I try to enable session and sfsb replication using the following steps:
After adding the @Clustered annotation the response times for any page that uses one of these clusted beans massively increases. As an example one of my pages takes on average 0.81 seconds to respond when the the backing session bean is not clusted and dead on 3 seconds when it is.
My first though was that maybe the infispan config (/jboss-6.0.0.Final/server/all/deploy/cluster/infinispan-cache-registry.sar/infinispan-configs.xml) for sfsbs defaulted to syncronous replication. But from looking at the file and the log output shown below async replication appears to be being used.
So my question is, is this level of response overhead expected when clustering sfsbs?
server.log output when installing one of the clustered sfsbs:
[ComponentsJmxRegistration] Could not register object with name: org.infinispan:type=Cache,name="ear=MyApp.ear,jar=MyActions.jar,name=MyBean,service=EJB3(repl_async)",manager="sfsb",component=Cache
INFO [CacheJmxRegistration] MBeans were successfully registered to the platform mbean server.
INFO [ComponentRegistry] Infinispan version: Infinispan 'Ursus' 4.2.0.FINAL
INFO [DefaultCacheContainerFactory] Started "ear=MyApp.ear,jar=MyAppActions.jar,name=MyBean,service=EJB3" cache from "sfsb" container
Setup:
JBoss AS 6.0.0.Final
Seam 2.2.2.Final