We are using TSA 3.5 for distributed caching platform.
There are 4 client nodes connected to TSA server. But the problem I am facing is that, our client nodes (L1) heap run out of memory every couple of days and requires a restart.
1) In tc-config.xml we have L2-L1 cache manager disabled because at one point there was a bug in TSA due to which it was evicting live objects from L1 cache.
2) On client nodes we are using Jrockit.
Any suggestions on optimizations for GC or how do i find out what's causing heap to run out of memory every couple days?
1. Bring down ehcache concurrency to 128. This can be done by setting concurrency = "128" in terracotta tag
{ <terracotta concurrency="128"/> } for each cache in ehcache.xml.
2. Increase the jvm heap size, preferably 2GB.
3. if you are running 64 bit machines, as general health recommendation, use -XX:+ UseCompressedOops -XX: +UseParallelOldGC in jvm arguments of client application.
Hope this will help, if not please share you server and cleint logs to understand your issue.
Please also let me know what exact version are you using? 3.5.3 is more stable and some very critical bug fixes.