Commit 934e2179 by Nepxion

Guava缓存换成Caffeine缓存

parent 82ee86ff
......@@ -31,6 +31,11 @@
</dependency>
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter</artifactId>
</dependency>
......
......@@ -9,22 +9,20 @@ package com.nepxion.discovery.plugin.framework.cache;
* @version 1.0
*/
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import org.apache.commons.lang3.StringUtils;
import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;
import com.github.benmanes.caffeine.cache.CacheLoader;
import com.github.benmanes.caffeine.cache.Caffeine;
import com.github.benmanes.caffeine.cache.LoadingCache;
public class PluginCache {
private LoadingCache<String, String> loadingCache;
public PluginCache() {
loadingCache = CacheBuilder.newBuilder()
.concurrencyLevel(8)
.expireAfterWrite(365 * 100, TimeUnit.DAYS)
loadingCache = Caffeine.newBuilder()
.expireAfterWrite(365 * 10, TimeUnit.DAYS)
.initialCapacity(10)
.maximumSize(100)
.recordStats()
......@@ -43,11 +41,7 @@ public class PluginCache {
}
public String get(String key) {
try {
return loadingCache.get(key);
} catch (ExecutionException e) {
return StringUtils.EMPTY;
}
return loadingCache.get(key);
}
public boolean clear(String key) {
......
......@@ -31,6 +31,7 @@
<commons.collections4.version>4.1</commons.collections4.version>
<commons.io.version>2.5</commons.io.version>
<dom4j.version>1.6.1</dom4j.version>
<caffeine.version>2.6.2</caffeine.version>
<swagger.version>2.7.0</swagger.version>
<spring.cloud.version>Edgware.SR4</spring.cloud.version>
<!-- <spring.cloud.version>Dalston.SR5</spring.cloud.version> -->
......@@ -130,6 +131,12 @@
</dependency>
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
<version>${caffeine.version}</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>${dom4j.version}</version>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment