怎么查看Guava cache本地缓存的值

问题:google guava 本地缓存怎么查看

有没有像redis一样的客户端或者通过命令查看?

思路:本地缓存在jvm中

  • 不会有客户端工具,除非自己暴露出去api出去。
  • 没有持久化的话,磁盘文件是找不到的。
  • 那就是用jvm工具,windows下有jvisualvm。

难点:怎么找到具体类?

通过生成特殊数量的对象实例,按实例数量降序,很快就可以定位到实际的类名。


for (int i=0; i<100; i++) {

  cache.put(key+"_"+i, value);

}

一、操作过程,以jvisualvm为例子:

  1. 打开jvisualvm.exe(位置:JAVA_HOME/bin)下:
打开visualVM
  1. 选择自己的应用程序:
选择应用
  1. 抽样器 -> 内存 -> 实例数 -> 降序 -> 100
定位要找的类名: com.google.common.cache.LocalCache$StrongAccessEntry
  1. 抽样器 -> 内存 -> 堆Dump -> 类 -> 类名过滤器(com.google.common.cache.LocalCache$StrongAccessEntry) -> 选中双击进行查看
锁定目标类
查看值
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容