2013-04-10 89 views
4

我有两个节点的JBoss应用服务器以下列方式7.1.1.FINAL集群设置 -JBoss应用服务器7的Infinispan群集

  1. 主 - Ubuntu服务器12.10(VirtualBox的VM)
  2. 从属上运行 - 运行在Windows 7上(VirtaulBox主机)

我已经在两个节点上部署了一个Spring Web应用程序,我试图设置一个工作的复制缓存。我的问题是即使聚类显然有效,缓存似乎也不会被复制。

我的配置 -

domain.xml中

(无论在主机和从机)

<subsystem xmlns="urn:jboss:domain:infinispan:1.2" default-cache-container="cluster"> 
    <cache-container name="cluster" aliases="ha-partition" default-cache="default" jndi-name="java:jboss/infinispan/cluster" start="EAGER"> 
     <transport lock-timeout="60000" /> 
     <replicated-cache name="default" mode="SYNC" batching="true"> 
      <locking isolation="REPEATABLE_READ"/> 
     </replicated-cache> 
    </cache-container> 
</subsystem> 

这是非常domain.xml中默认的配置,除了JNDI名称和跃跃欲试开始。

在Spring的配置 -

<infinispan:container-cache-manager id="cacheManager" cache-container-ref="springCacheContainer" /> 
<jee:jndi-lookup id="springCacheContainer" jndi-name="java:jboss/infinispan/cluster" /> 

有了这个设置,缓存的作品,但它不是复制。缓存似乎独立运作。另外,EAGER的开始似乎没有效果。缓存似乎只在第一次使用时才被初始化。

从主日志(第一次使用高速缓存) -

[Server:server-one] 03:25:55,756 INFO [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ajp-192.168.2.13-192.168.2.13-8009-3) ISPN000078: Starting JGroups Channel 
[Server:server-one] 03:25:55,762 INFO [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ajp-192.168.2.13-192.168.2.13-8009-3) ISPN000094: Received new cluster view: [master:server-one/cluster|1] [master:server-one/cluster, slave:server-one-slave/cluster] 
[Server:server-one] 03:25:55,763 INFO [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ajp-192.168.2.13-192.168.2.13-8009-3) ISPN000079: Cache local address is master:server-one/cluster, physical addresses are [192.168.2.13:55200] 
[Server:server-one] 03:25:55,769 INFO [org.infinispan.factories.GlobalComponentRegistry] (ajp-192.168.2.13-192.168.2.13-8009-3) ISPN000128: Infinispan version: Infinispan 'Brahma' 5.1.2.FINAL 
[Server:server-one] 03:25:55,851 INFO [org.jboss.as.clustering.infinispan] (ajp-192.168.2.13-192.168.2.13-8009-3) JBAS010281: Started cluster cache from cluster container 

从从日志(用于第一次高速缓存) -

[Server:server-one-slave] 03:29:38,124 INFO [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ajp--192.168.2.10-8009-2) ISPN000078: Starting JGroups Channel 
[Server:server-one-slave] 03:29:38,129 INFO [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ajp--192.168.2.10-8009-2) ISPN000094: Received new cluster view: [master:server-one/cluster|1] [master:server-one/cluster, slave:server-one-slave/cluster] 
[Server:server-one-slave] 03:29:38,130 INFO [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ajp--192.168.2.10-8009-2) ISPN000079: Cache local address is slave:server-one-slave/cluster, physical addresses are [192.168.2.10:55200] 
[Server:server-one-slave] 03:29:38,133 INFO [org.infinispan.factories.GlobalComponentRegistry] (ajp--192.168.2.10-8009-2) ISPN000128: Infinispan version: Infinispan 'Brahma' 5.1.2.FINAL 
[Server:server-one-slave] 03:29:38,195 INFO [org.jboss.as.clustering.infinispan] (ajp--192.168.2.10-8009-2) JBAS010281: Started cluster cache from cluster container 

我不认为这是一个UDP /多播问题,因为我在此群集中设置了mod_cluster,HornetQ和Quartz,它们都按预期工作。

回答

0

<distributable/>放在web.xml中有诀窍。

0

我有一个类似的问题,我的缓存不会复制,直到应用程序第一次使用。我可以通过将replicated-cache的“start”属性与cache-container属性start =“EAGER”一起设置为EAGER来解决此问题。

<replicated-cache name="default" mode="SYNC" batching="true" start="EAGER">