IDEMPIERE-3653 1008016 Reduce cache max size from 2000 to 1000. Add max-idle config for hazelcast map ( 30 minutes ).
This commit is contained in:
parent
f80cb9ca7a
commit
6105b42ecb
|
@ -68,7 +68,24 @@ public class CacheMgt
|
|||
/** Logger */
|
||||
private static CLogger log = CLogger.getCLogger(CacheMgt.class);
|
||||
|
||||
private final static int MAX_SIZE = 2000;
|
||||
private static int MAX_SIZE = 1000;
|
||||
static
|
||||
{
|
||||
try
|
||||
{
|
||||
String maxSize = System.getProperty("Cache.MaxSize");
|
||||
if (maxSize != null && maxSize.trim().length() > 0)
|
||||
{
|
||||
int max = 0;
|
||||
try
|
||||
{
|
||||
max = Integer.parseInt(maxSize.trim());
|
||||
} catch (Throwable t) {}
|
||||
if (max > 0)
|
||||
MAX_SIZE = max;
|
||||
}
|
||||
} catch (Throwable t) {}
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* Create Cache Instance
|
||||
|
|
|
@ -135,7 +135,7 @@
|
|||
automatically evicted from the map. Entry is touched if get, put or containsKey is called.
|
||||
Any integer between 0 and Integer.MAX_VALUE. 0 means infinite. Default is 0.
|
||||
-->
|
||||
<max-idle-seconds>0</max-idle-seconds>
|
||||
<max-idle-seconds>1800</max-idle-seconds>
|
||||
<!--
|
||||
Valid values are:
|
||||
NONE (no eviction),
|
||||
|
@ -150,7 +150,7 @@
|
|||
Any integer between 0 and Integer.MAX_VALUE. 0 means
|
||||
Integer.MAX_VALUE. Default is 0.
|
||||
-->
|
||||
<max-size policy="cluster_wide_map_size">2000</max-size>
|
||||
<max-size policy="cluster_wide_map_size">1000</max-size>
|
||||
<!--
|
||||
When max. size is reached, specified percentage of
|
||||
the map will be evicted. Any integer between 0 and 100.
|
||||
|
|
|
@ -15,9 +15,11 @@ package org.idempiere.hazelcast.service;
|
|||
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.net.URL;
|
||||
import java.text.DateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.Enumeration;
|
||||
import java.util.concurrent.ExecutionException;
|
||||
import java.util.concurrent.Future;
|
||||
import java.util.concurrent.ScheduledThreadPoolExecutor;
|
||||
|
@ -30,6 +32,8 @@ import org.osgi.framework.BundleContext;
|
|||
|
||||
import com.hazelcast.config.Config;
|
||||
import com.hazelcast.config.FileSystemXmlConfig;
|
||||
import com.hazelcast.config.MapConfig;
|
||||
import com.hazelcast.config.UrlXmlConfig;
|
||||
import com.hazelcast.core.*;
|
||||
|
||||
/**
|
||||
|
@ -123,12 +127,36 @@ public class Activator implements BundleActivator {
|
|||
Config config = new FileSystemXmlConfig(file);
|
||||
config.setClassLoader(getClass().getClassLoader());
|
||||
hazelcastInstance = Hazelcast.newHazelcastInstance(config);
|
||||
MapConfig mc = config.getMapConfig("default");
|
||||
if (mc != null) {
|
||||
System.out.println("Hazelcast Max Size Config: "+mc.getMaxSizeConfig().getMaxSizePolicy() + " " + mc.getMaxSizeConfig().getSize());
|
||||
}
|
||||
return;
|
||||
} catch (FileNotFoundException e) {}
|
||||
}
|
||||
|
||||
Enumeration<URL> entries = getContext().getBundle().findEntries("/", "hazelcast.xml", false);
|
||||
URL url = entries.hasMoreElements() ? entries.nextElement() : null;
|
||||
if (url != null) {
|
||||
try {
|
||||
Config config = new UrlXmlConfig(url);
|
||||
config.setClassLoader(getClass().getClassLoader());
|
||||
hazelcastInstance = Hazelcast.newHazelcastInstance(config);
|
||||
MapConfig mc = config.getMapConfig("default");
|
||||
if (mc != null) {
|
||||
System.out.println("Hazelcast Max Size Config: "+mc.getMaxSizeConfig().getMaxSizePolicy() + " " + mc.getMaxSizeConfig().getSize());
|
||||
}
|
||||
return;
|
||||
} catch (IOException e) {}
|
||||
}
|
||||
|
||||
Config config = new Config();
|
||||
config.setClassLoader(getClass().getClassLoader());
|
||||
hazelcastInstance = Hazelcast.newHazelcastInstance(config);
|
||||
MapConfig mc = config.getMapConfig("default");
|
||||
if (mc != null) {
|
||||
System.out.println("Hazelcast Max Size Config: "+mc.getMaxSizeConfig().getMaxSizePolicy() + " " + mc.getMaxSizeConfig().getSize());
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue