Server AppFabric 缓存 - 内存耗尽时会发生什么

Server AppFabric 缓存 - 内存耗尽时会发生什么

在我的 Windows Server 2008 R2 机器上,我配置为使用服务器 AppFabric缓存功能。

它有一个很好的 API,我可以将其实现为我的ASP.NET MVC 应用程序。

我心里有一个疑问:内存耗尽时会发生什么?

在那台机器上我有 4GB 内存。我四处寻找,但找不到任何可以让我为 AppFabric 配置最大内存使用量的东西。

我知道在这种情况下我该怎么做吗?

答案1

您可以使用以下配置在群集中每个缓存主机上用于 AppFabric 缓存的总内存:设置CacheHostConfigPowershell cmdlet。使用 CacheSize 参数(以 MB 为单位)例如

Set-CacheHostConfig -HostName MyCacheServer -CachePort 22233 -CacheSize 1024

每个缓存主机还有两个内存阈值,即低水位线和高水位线,以百分比表示。我在 MSDN 上找不到任何明确写明的内容,但我认为这些是缓存大小的百分比,而不是机器总内存的百分比。同样,您可以使用 调整这些设置Set-CacheHostConfig

正如所述到期和驱逐一旦达到低水位标记,过期的对象就会从缓存中被逐出(对我来说,这提出了一个问题为什么它们不会在过期后被驱逐(但那是另一天的事了),基于最近最少使用原则。如果达到高水位标记,未过期的项目将被驱逐,直到达到低水位标记。

相关内容