Interface CacheStats


public interface CacheStats
Cache Statistics Snapshot Interface - Immutable cache performance metrics 缓存统计快照接口 - 不可变的缓存性能指标

Provides comprehensive cache statistics for monitoring and optimization.

提供完整的缓存统计信息,用于监控和优化。

Features | 主要功能:

  • Hit/Miss statistics - 命中/未命中统计
  • Load success/failure count - 加载成功/失败计数
  • Eviction statistics - 淘汰统计
  • Rate calculations - 比率计算
  • Delta comparison - 增量比较

Usage Examples | 使用示例:

CacheStats stats = cache.stats();

// Get hit rate - 获取命中率
double hitRate = stats.hitRate();

// Get request count - 获取请求总数
long requests = stats.requestCount();

// Compare snapshots - 比较快照
CacheStats before = cache.stats();
// ... operations ...
CacheStats after = cache.stats();
CacheStats delta = after.minus(before);

Security | 安全性:

  • Thread-safe: Yes (immutable) - 线程安全: 是(不可变)
  • Null-safe: Yes - 空值安全: 是
Since:
JDK 25, opencode-base-cache V1.0.0
Author:
Leon Soo www.LeonSoo.com
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    default double
    Get average load time in nanoseconds 获取平均加载时间(纳秒)
    static CacheStats
    Get empty stats instance 获取空统计实例
    long
    Get eviction count 获取淘汰次数
    long
    Get eviction weight 获取淘汰权重
    long
    Get hit count 获取命中次数
    default double
    Get hit rate (0.0 to 1.0) 获取命中率(0.0 到 1.0)
    default long
    Get total load count 获取总加载次数
    long
    Get failed load count 获取加载失败次数
    default double
    Get load failure rate 获取加载失败率
    long
    Get successful load count 获取加载成功次数
    default double
    Get load success rate 获取加载成功率
    Subtract another stats snapshot to get delta 减去另一个统计快照获取增量
    long
    Get miss count 获取未命中次数
    default double
    Get miss rate (0.0 to 1.0) 获取未命中率(0.0 到 1.0)
    static CacheStats
    of(long hitCount, long missCount, long loadSuccessCount, long loadFailureCount, long totalLoadTime, long evictionCount, long evictionWeight)
    Create stats instance 创建统计实例
    Add another stats snapshot 加上另一个统计快照
    default long
    Get total request count (hits + misses) 获取请求总数(命中 + 未命中)
    long
    Get total load time in nanoseconds 获取总加载时间(纳秒)
  • Method Details

    • hitCount

      long hitCount()
      Get hit count 获取命中次数
      Returns:
      hit count | 命中次数
    • missCount

      long missCount()
      Get miss count 获取未命中次数
      Returns:
      miss count | 未命中次数
    • loadSuccessCount

      long loadSuccessCount()
      Get successful load count 获取加载成功次数
      Returns:
      load success count | 加载成功次数
    • loadFailureCount

      long loadFailureCount()
      Get failed load count 获取加载失败次数
      Returns:
      load failure count | 加载失败次数
    • totalLoadTime

      long totalLoadTime()
      Get total load time in nanoseconds 获取总加载时间(纳秒)
      Returns:
      total load time | 总加载时间
    • evictionCount

      long evictionCount()
      Get eviction count 获取淘汰次数
      Returns:
      eviction count | 淘汰次数
    • evictionWeight

      long evictionWeight()
      Get eviction weight 获取淘汰权重
      Returns:
      eviction weight | 淘汰权重
    • requestCount

      default long requestCount()
      Get total request count (hits + misses) 获取请求总数(命中 + 未命中)
      Returns:
      request count | 请求总数
    • hitRate

      default double hitRate()
      Get hit rate (0.0 to 1.0) 获取命中率(0.0 到 1.0)
      Returns:
      hit rate | 命中率
    • missRate

      default double missRate()
      Get miss rate (0.0 to 1.0) 获取未命中率(0.0 到 1.0)
      Returns:
      miss rate | 未命中率
    • loadCount

      default long loadCount()
      Get total load count 获取总加载次数
      Returns:
      total load count | 总加载次数
    • loadFailureRate

      default double loadFailureRate()
      Get load failure rate 获取加载失败率
      Returns:
      load failure rate | 加载失败率
    • loadSuccessRate

      default double loadSuccessRate()
      Get load success rate 获取加载成功率
      Returns:
      load success rate (0.0 to 1.0) | 加载成功率(0.0 到 1.0)
      Since:
      V2.0.1
    • averageLoadPenalty

      default double averageLoadPenalty()
      Get average load time in nanoseconds 获取平均加载时间(纳秒)
      Returns:
      average load time | 平均加载时间
    • minus

      CacheStats minus(CacheStats other)
      Subtract another stats snapshot to get delta 减去另一个统计快照获取增量
      Parameters:
      other - the other stats | 另一个统计
      Returns:
      delta stats | 增量统计
    • plus

      CacheStats plus(CacheStats other)
      Add another stats snapshot 加上另一个统计快照
      Parameters:
      other - the other stats | 另一个统计
      Returns:
      combined stats | 合并后的统计
    • empty

      static CacheStats empty()
      Get empty stats instance 获取空统计实例
      Returns:
      empty stats | 空统计
    • of

      static CacheStats of(long hitCount, long missCount, long loadSuccessCount, long loadFailureCount, long totalLoadTime, long evictionCount, long evictionWeight)
      Create stats instance 创建统计实例
      Parameters:
      hitCount - hit count | 命中次数
      missCount - miss count | 未命中次数
      loadSuccessCount - load success count | 加载成功次数
      loadFailureCount - load failure count | 加载失败次数
      totalLoadTime - total load time | 总加载时间
      evictionCount - eviction count | 淘汰次数
      evictionWeight - eviction weight | 淘汰权重
      Returns:
      new stats instance | 新统计实例