I’m trying to configure cache distribution between two instances.
For this I’ve created test appliaction:
Application.cfc
component {
this.cache.connections["testcache"] = {
class: 'org.lucee.extension.cache.eh.EHCache',
bundleName: 'ehcache.extension',
bundleVersion: '2.10.0.36',
storage: false,
custom: [
"bootstrapAsynchronously":"true",
"replicatePuts":"true",
"automatic_hostName":"",
"bootstrapType":"on",
"maxelementsinmemory":"20000",
"manual_rmiUrls":"//10.10.10.10:40001",
"automatic_multicastGroupAddress":"",
"distributed":"manual",
"replicatePutsViaCopy":"true",
"memoryevictionpolicy":"LRU",
"maximumChunkSizeBytes":"5000000",
"timeToIdleSeconds":"21600",
"automatic_multicastGroupPort":"4448",
"listener_socketTimeoutMillis":"120000",
"timeToLiveSeconds":"86400",
"replicateRemovals":"true",
"manual_addional":"",
"replicateUpdatesViaCopy":"true",
"automatic_addional":"",
"replicateAsynchronously":"false",
"maxelementsondisk":"10000000",
"listener_remoteObjectPort":"",
"asynchronousReplicationIntervalMillis":"1000",
"listener_hostName":"",
"replicateUpdates":"true",
"manual_hostName":"",
"automatic_timeToLive":"unrestricted",
"listener_port":""
]
, default: 'object'
};
}
index.cfm
<cfscript>
variables.res = cacheGet('Test');
if (isNull(variables.res)) {
variables.res = 'Cache is empty';
}
writeOutput(variables.res);
</cfscript>
put.cfm
<cfscript>
cachePut('Test', 'Hello, World!');
writeOutput('Cache put!');
</cfscript>
delete.cfm
<cfscript>
cacheDelete('Test');
writeOutput('Cache deleted!');
</cfscript>
In Applicationc.cfc on instace A I provide rmiUrls “//inst.ance.B.ip:40001” and on instance B I provide rmiUrls “//inst.ance.A.ip:40001”
And now I’m trying to execute put/delete and check cache on both instances but for my no pur neither delete doesn’t synchronized on any of them(
What I’ve missed? What I’m doing wrong?
OS: Windows 10 (10.0) 64bit
Java Version: 11.0.22 (Oracle Corporation) 64bit
Tomcat Version: Apache Tomcat/9.0.86
Lucee Version: 6.0.4.10