apache 点燃堆内和堆外内存

Mud*_*wal 0 ignite

我用的是ignite 2.9。本机持久性已禁用。

使用以下方式启用堆缓存

CacheConfiguration.setOnheapCacheEnabled(true)

但我仍然可以在日志中看到堆外指标。

  1. 在堆上设置为 true 后,它不应该只使用堆内存吗?
  2. 什么类型的数据存储在堆外?
  3. 如果为默认数据区域定义的逐出策略是 random2Lru 且在堆上定义为 LRU,则逐出如何工作?

Ste*_*ton 5

堆上缓存是除了堆外存储之外的。

所以:

  1. 保存到缓存/表中的任何内容
  2. 驱逐有两种。数据区域的逐出是在页级别而不是记录级别,因此可以一起逐出多个记录。堆内缓存在行级别上工作。从堆内缓存中逐出记录不会将其从堆外缓存中逐出。从堆外缓存中逐出也会从堆内缓存中逐出。