Cassandra - 一旦Key-cache被填满,真的会发生什么

时间:2014-09-10 15:24:14

标签: caching cassandra key-cache-size

考虑到我已经配置了1 Mb的密钥缓存(考虑它可以容纳13000个密钥)。

然后我在一个列族中写了一些记录(比如说20000)。

然后首先读取它(所有键按照与用于写入的顺序相同的顺序),并且键开始存储在键缓存中。

当读取达到@ 13000时,密钥缓存完全填满。

读取下一个键时,键缓存会发生什么? (对于新读取的密钥,删除了哪个密钥?)。

密钥缓存跟随FIFO或LIFO或随机输出?。

1 个答案:

答案 0 :(得分:2)

密钥缓存使用下面的ConcurrentLinkedHashMap,因此其驱逐策略是LRU(最近最少使用)。

https://code.google.com/p/concurrentlinkedhashmap/#Features

https://code.google.com/p/concurrentlinkedhashmap/wiki/Design#Beyond_LRU