問(wèn)題:google guava 本地緩存怎么查看
有沒(méi)有像redis一樣的客戶端或者通過(guò)命令查看?
思路:本地緩存在jvm中
- 不會(huì)有客戶端工具,除非自己暴露出去api出去漱办。
- 沒(méi)有持久化的話茵烈,磁盤文件是找不到的。
- 那就是用jvm工具环疼,windows下有jvisualvm铭段。
難點(diǎn):怎么找到具體類?
通過(guò)生成特殊數(shù)量的對(duì)象實(shí)例,按實(shí)例數(shù)量降序秦爆,很快就可以定位到實(shí)際的類名序愚。
for (int i=0; i<100; i++) {
cache.put(key+"_"+i, value);
}
一、操作過(guò)程等限,以jvisualvm為例子:
- 打開jvisualvm.exe(位置:JAVA_HOME/bin)下:
打開visualVM
- 選擇自己的應(yīng)用程序:
選擇應(yīng)用
- 抽樣器 -> 內(nèi)存 -> 實(shí)例數(shù) -> 降序 -> 100
定位要找的類名: com.google.common.cache.LocalCache$StrongAccessEntry
- 抽樣器 -> 內(nèi)存 -> 堆Dump -> 類 -> 類名過(guò)濾器(com.google.common.cache.LocalCache$StrongAccessEntry) -> 選中雙擊進(jìn)行查看
鎖定目標(biāo)類
查看值