1

For example, we have server which acts as a file store (jackrabbit back end). This data is pushed on start into the in memory JCS Cache. This all seems to work fine.

However, our software can be multi-noded, so we need to have JCS replicate the data to the other node. To test this I used the following configuration files (with the ports flipped for each node).

# DEFAULT CACHE REGION

jcs.default=LTCP
jcs.default.cacheattributes=org.apache.commons.jcs.engine.CompositeCacheAttributes
jcs.default.cacheattributes.MaxObjects=1000
jcs.default.cacheattributes.MemoryCacheName=org.apache.commons.jcs.engine.memory.lru.LRUMemoryCache

jcs.auxiliary.LTCP=org.apache.commons.jcs.auxiliary.lateral.socket.tcp.LateralTCPCacheFactory
jcs.auxiliary.LTCP.attributes=org.apache.commons.jcs.auxiliary.lateral.socket.tcp.TCPLateralCacheAttributes
jcs.auxiliary.LTCP.attributes.TcpServers=localhost:1987
jcs.auxiliary.LTCP.attributes.TcpListenerPort=1986
jcs.auxiliary.LTCP.attributes.AllowGet=true

This seems to initially, work, If I load Node A with 100 files (and keeploading at 1 every 10 seconds), its gets pushed across to Node B, and keeps updating.

However if I pull down Node B, and then restart Node B, It WILL pull in the newly created Files.

How can I make it do a consistency check on start, so when Node A re-finds Node B (which is seems to) it resyncs and sorts its self back out.. I.e pushes the 100 + X to Node B again?

I only want to use in memory caches, as effectively the Disk Cache will be the JackRabbit backend (slower I know, hence we just need an in memory cache)

Thanks

joe90
  • 538
  • 2
  • 5
  • 19

0 Answers0