From f0883454afbc92a3cb7f5e77d2dfcea01546095a Mon Sep 17 00:00:00 2001 From: fengzhizi715 Date: Sun, 21 Feb 2021 13:01:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../rxcache/domain/CacheStatistics.java | 32 ++++++++++++++++--- .../rxcache/memory/CaffeineImpl.java | 11 ++++--- .../rxcache/memory/GuavaCacheImpl.java | 11 ++++--- 3 files changed, 42 insertions(+), 12 deletions(-) diff --git a/core/src/main/java/com/safframework/rxcache/domain/CacheStatistics.java b/core/src/main/java/com/safframework/rxcache/domain/CacheStatistics.java index 4e0f20a3..5fcb79b1 100644 --- a/core/src/main/java/com/safframework/rxcache/domain/CacheStatistics.java +++ b/core/src/main/java/com/safframework/rxcache/domain/CacheStatistics.java @@ -27,13 +27,37 @@ public CacheStatistics(int size,int putCount,int evictionCount,int hitCount,int public int getSize() { return this.size; } - public int getPutCount() { return this.putCount; } + public int getPutCount() { + return putCount; + } + + public void setPutCount(int putCount) { + this.putCount = putCount; + } + + public int getEvictionCount() { + return evictionCount; + } + + public void setEvictionCount(int evictionCount) { + this.evictionCount = evictionCount; + } + + public int getHitCount() { + return hitCount; + } - public int getEvictionCount() { return this.evictionCount; } + public void setHitCount(int hitCount) { + this.hitCount = hitCount; + } - public int getHitCount() { return this.hitCount; } + public int getMissCount() { + return missCount; + } - public int getMissCount() { return this.missCount; } + public void setMissCount(int missCount) { + this.missCount = missCount; + } public void incrementPutCount() { this.putCount++; } diff --git a/memory/caffeine/src/main/java/com/safframework/rxcache/memory/CaffeineImpl.java b/memory/caffeine/src/main/java/com/safframework/rxcache/memory/CaffeineImpl.java index 6133d045..ff768f0c 100644 --- a/memory/caffeine/src/main/java/com/safframework/rxcache/memory/CaffeineImpl.java +++ b/memory/caffeine/src/main/java/com/safframework/rxcache/memory/CaffeineImpl.java @@ -27,6 +27,7 @@ public CaffeineImpl(long maxSize) { .recordStats() .maximumSize(maxSize) .build(); + this.cacheStatistics = new CacheStatistics((int)maxSize); } public CaffeineImpl(long maxSize, CacheConfig cacheConfig) { @@ -50,6 +51,7 @@ public CaffeineImpl(long maxSize, CacheConfig cacheConfig) { } cache = caffeine.build(); + this.cacheStatistics = new CacheStatistics((int)maxSize); } @Override @@ -124,10 +126,11 @@ public CacheStatistics getCacheStatistics() { CacheStats cacheStats = cache.stats(); - long evictionCount = cacheStats.evictionCount(); - long hitCount = cacheStats.hitCount(); - long missCount = cacheStats.missCount(); + cacheStatistics.setPutCount(putCount.get()); + cacheStatistics.setEvictionCount((int)cacheStats.evictionCount()); + cacheStatistics.setHitCount((int)cacheStats.hitCount()); + cacheStatistics.setMissCount((int)cacheStats.missCount()); - return new CacheStatistics((int)maxSize,putCount.get(),(int)evictionCount,(int)hitCount,(int)missCount); + return cacheStatistics; } } diff --git a/memory/guava-cache/src/main/java/com/safframework/rxcache/memory/GuavaCacheImpl.java b/memory/guava-cache/src/main/java/com/safframework/rxcache/memory/GuavaCacheImpl.java index e229d012..75ab9623 100644 --- a/memory/guava-cache/src/main/java/com/safframework/rxcache/memory/GuavaCacheImpl.java +++ b/memory/guava-cache/src/main/java/com/safframework/rxcache/memory/GuavaCacheImpl.java @@ -34,6 +34,7 @@ public String load(String key) throws Exception { return key; } }); + this.cacheStatistics = new CacheStatistics((int)maxSize); } public GuavaCacheImpl(long maxSize, CacheConfig cacheConfig) { @@ -63,6 +64,7 @@ public String load(String key) throws Exception { return key; } }); + this.cacheStatistics = new CacheStatistics((int)maxSize); } @Override @@ -137,10 +139,11 @@ public CacheStatistics getCacheStatistics() { CacheStats cacheStats = cache.stats(); - long evictionCount = cacheStats.evictionCount(); - long hitCount = cacheStats.hitCount(); - long missCount = cacheStats.missCount(); + cacheStatistics.setPutCount(putCount.get()); + cacheStatistics.setEvictionCount((int)cacheStats.evictionCount()); + cacheStatistics.setHitCount((int)cacheStats.hitCount()); + cacheStatistics.setMissCount((int)cacheStats.missCount()); - return new CacheStatistics((int)maxSize,putCount.get(),(int)evictionCount,(int)hitCount,(int)missCount); + return cacheStatistics; } }