1 引言
作為 java 開發工作者,相信大傢對於 guava 這個工具包都不會太陌生,而對於本地緩存技術 guava cache,大傢在日常的工作開發中也都有所瞭解,接下來本文就從各個角度入手來對於 Google 提供的 guava cache 進行解析。
2 guava cache 應用場景
本地緩存的數據讀寫都在一個進程內,相對與 redis 等分佈式緩存,不需要網絡傳輸的過程,訪問速度很快,同時也受到 JVM 內存的制約,無法在數據量較多的場景下使用。
基於以上特點,guava cache 的主要應用場景為以下幾種:
- 對於訪問速度有較大要求
- 存儲的數據不經常變化
- 數據量不大,占用內存較小
- 需要訪問整個集合
- 能夠容忍數據不是實時的
在這裡 guava cache 被用於儲存參數配置,也符合以上的應用場景條件。
3 guava cache 的使用方式
guava cache 位於 com.google.common.cache 包下,核心的類有兩個,一個是 CacheBuilder,是用來構建緩存的,另一個是 Cache,也就是緩存容器,用來存放緩存數據的。
要使用 guava cache,首先要引入 maven 依賴:
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>18.0</version>
</dependency>