缓存驱逐策略
如果缓存达到其最大存储限制并且启用了逐出,则将逐出指定比例的项目以为新对象腾出空间。 另一方面,如果缓存达到其最大存储限制并且关闭驱逐,则项目既不会被驱逐也不会进一步添加到缓存中。
重要
在进行任何配置更改之前确保缓存停止。
缓存驱逐方案用于选择需要从缓存中移除的对象。可以在创建时选择特定的逐出策略,但一旦设置,就无法在运行的缓存中更改。仅当缓存未运行时,用户才能在创建缓存后更改逐出策略。提供了三种类型的驱逐政策 NCache:
- 最少使用
在此方案中,使用了一个计数器来对对象的访问进行计数。 驱逐时,计数器编号最低的对象首先被驱逐。 这里也是在具有相同计数器的两个对象之间进行随机选择。
- 最近最少使用
该驱逐方案将时间戳与所有对象相关联。 每次访问对象时都会更新此时间戳。 驱逐时,首先选择具有最早时间戳的对象。 如果两个对象具有相同的时间戳,则进行随机选择。
- 基于优先级的驱逐
备注
此功能也可用于 NCache Professional.
这是默认的逐出策略,与 LFU 具有相同的机制,但添加了与对象添加到缓存时关联的相对成本。 成本较低的对象先于成本较高的对象被移除。 客户端应用程序可以从预定义的优先级列表中进行选择(低、低于正常、正常、高于正常、高和不可移除)。 如果未选择优先级,则默认设置为“正常”。
这些缓存的逐出策略可以通过以下两种方式之一指定。
使用缓存驱逐 NCache 管理中心
启动 NCache 管理中心通过浏览 http://localhost:8251 or
<server-ip>:8251
在 Windows 和 Linux 上。在左侧导航栏中,单击 集群缓存 or 本地缓存,基于缓存服务器启动。 针对缓存名称,单击 点击观看截图.
这将打开缓存的详细配置页面。
在 概述 标签,点击 按钮。
访问 启用驱逐 框。
点击 策略 从下拉列表中选择。
如果您已选择 优先 基于驱逐,然后 默认优先级 也可以在下拉列表中更改。
更改 百分比 如果需要的话。
- 点击 保存缓存配置。
手动编辑 NCache 配置
- 通过以下方式指定缓存的逐出策略 配置文件 通过添加
<eviction-policy>
标签下<cache-settings>
:
<cache-settings ...>
<eviction-policy enabled="True" default-priority="normal" policy="priority" eviction-ratio="5%"/>
</cache-settings>
- 进行更改后,启动缓存并重新启动 NCache 服务。
警告
eviction-ratio=5%
等于总缓存大小的 5%。 不建议在会议期间驱逐。