JBoss Cache Cluster Problem within JBoss AS 4.0.2
gh_aiyz Aug 29, 2006 12:54 PMHi all, I got a problem when use JBoss Cache 1.4.0 within JBoss AS 4.0.2.
I have two application servers. when they start up, the caches can find each other, and fetch the in-memory status successfully. But when I put an object into cache A, it does not replicate the object to cache B; however, when I remove this object from A, it's also removed from B....
Yes, the insert is not replicated while the removing is replicated successfully.
what's wrong with my configuration? Please help me.
<!-- ==================================================================== --> <!-- JBoss Cache --> <!-- ==================================================================== --> <mbean code="org.jboss.cache.TreeCache" name="jboss.cache:service=V360WebLayerCache"> <depends>jboss:service=Naming</depends> <depends>jboss:service=TransactionManager</depends> <attribute name="TransactionManagerLookupClass"> org.jboss.cache.JBossTransactionManagerLookup </attribute> <attribute name="IsolationLevel">REPEATABLE_READ</attribute> <attribute name="CacheMode">REPL_SYNC</attribute> <attribute name="FetchInMemoryState">true</attribute> <attribute name="ClusterName">${aa.cache.cluster.name}.web</attribute> <attribute name="ClusterConfig"> <config> <UDP mcast_port="${aa.cache.cluster.port}" ip_ttl="64" ip_mcast="true" mcast_send_buf_size="150000" mcast_recv_buf_size="80000" ucast_send_buf_size="150000" ucast_recv_buf_size="80000" loopback="false" /> <PING timeout="2000" num_initial_members="3" up_thread="false" down_thread="false" /> <MERGE2 min_interval="10000" max_interval="20000" /> <FD shun="true" up_thread="true" down_thread="true" /> <VERIFY_SUSPECT timeout="1500" up_thread="false" down_thread="false" /> <pbcast.NAKACK gc_lag="50" retransmit_timeout="600,1200,2400,4800" up_thread="false" down_thread="false" /> <pbcast.STABLE desired_avg_gossip="20000" up_thread="false" down_thread="false" /> <UNICAST timeout="600,1200,2400" window_size="100" min_threshold="10" down_thread="false" /> <FRAG frag_size="8192" down_thread="false" up_thread="false" /> <pbcast.GMS join_timeout="5000" join_retry_timeout="2000" shun="true" print_local_addr="true" /> <pbcast.STATE_TRANSFER up_thread="false" down_thread="false" /> </config> </attribute> <attribute name="InitialStateRetrievalTimeout">20000</attribute> <attribute name="SyncReplTimeout">15000</attribute> <attribute name="LockAcquisitionTimeout">10000</attribute> <!--attribute name="EvictionPolicyClass">org.jboss.cache.eviction.LRUPolicy</attribute> <attribute name="EvictionPolicyConfig"> <config> <attribute name="wakeUpIntervalSeconds">200</attribute> <region name="/${aa.cache.web.fid.root}"> <attribute name="maxNodes">${aa.cache.web.fid.maxNode}</attribute> <attribute name="timeToLiveSeconds">${aa.cache.web.fid.timeToLive}</attribute> </region> <region name="/${aa.cache.web.guitext.root}"> <attribute name="maxNodes">${aa.cache.web.guitext.maxNode}</attribute> <attribute name="timeToLiveSeconds">${aa.cache.web.guitext.timeToLive}</attribute> </region> <region name="/${aa.cache.web.bizdomain.root}"> <attribute name="maxNodes">${aa.cache.web.bizdomain.maxNode}</attribute> <attribute name="timeToLiveSeconds">${aa.cache.web.bizdomain.timeToLive}</attribute> </region> <region name="/${aa.cache.web.constant.root}"> <attribute name="maxNodes">${aa.cache.web.constant.maxNode}</attribute> <attribute name="timeToLiveSeconds">${aa.cache.web.constant.timeToLive}</attribute> </region> <region name="/${aa.cache.web.gview.root}"> <attribute name="maxNodes">${aa.cache.web.gview.maxNode}</attribute> <attribute name="timeToLiveSeconds">${aa.cache.web.gview.timeToLive}</attribute> </region> <region name="/${aa.cache.web.general.root}"> <attribute name="maxNodes">${aa.cache.web.general.maxNode}</attribute> <attribute name="timeToLiveSeconds">${aa.cache.web.general.timeToLive}</attribute> </region> </config> </attribute--> </mbean> <!-- ==================================================================== --> <!-- JBoss Cache JNDI --> <!-- ==================================================================== --> <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory" name="mydomain:service=proxyFactory,type=jrmp,target=factory"> <attribute name="InvokerName"> jboss:service=invoker,type=jrmp </attribute> <attribute name="TargetName"> jboss.cache:service=V360WebLayerCache </attribute> <attribute name="JndiName">${aa.cache.jndi.name}</attribute> <attribute name="InvokeTargetMethod">true</attribute> <attribute name="ExportedInterface"> org.jboss.cache.TreeCacheMBean </attribute> <depends>jboss:service=invoker,type=jrmp</depends> <depends>jboss.cache:service=V360WebLayerCache</depends> </mbean>
All the ${} variables are in an individual file.