Asp.net Azure的HttpRuntime.Cache设置?
我正在Azure上使用Asp.net Azure的HttpRuntime.Cache设置?,asp.net,.net,azure,caching,memory,Asp.net,.net,Azure,Caching,Memory,我正在Azure上使用HttpRuntime.Cache进行内存缓存 问题是内存已满-然后它达到Azure的90%百分比限制,Azure认为该角色不健康并重新启动它-导致整个站点关闭 现在我找到了EffectivePercentagePhysicalMemoryLimit属性,在Azure上它似乎被设置为98%,因此高于90%的“不健康”限制 如何更改HttpRuntime.Cache上的此限制?该属性是只读的 是否可以将Azure自动重启百分比调整到更高一点 使用内存缓存是否还有其他建议的设
HttpRuntime.Cache
进行内存缓存
问题是内存已满-然后它达到Azure的90%百分比限制,Azure认为该角色不健康并重新启动它-导致整个站点关闭
现在我找到了EffectivePercentagePhysicalMemoryLimit属性,在Azure上它似乎被设置为98%,因此高于90%的“不健康”限制
- 如何更改
上的此限制?该属性是只读的HttpRuntime.Cache
- 是否可以将Azure自动重启百分比调整到更高一点
- 使用内存缓存是否还有其他建议的设置?还有其他我应该使用的类吗?我几乎找不到与Azure结合的信息。大多数文章都讨论了一种单独的缓存服务,用于解决数据是否需要在多个实例之间保持一致的问题
需要明确的是:我需要内存缓存-我不需要通过Redis共享缓存,因为数据不太需要一致性。您可以通过在web.config中使用的
percentagePhysicalMemoryUsedLimit
属性更改有效PercentagePhysicalMemoryLimit
EffectivePercentagePhysicalMemoryLimit
属性可以使用应用程序配置文件中缓存(ASP.NET设置架构)元素的percentagePhysicalMemoryUsedLimit
属性设置。如果未设置percentagePhysicalMemoryUsedLimit
属性,则缓存算法将确定缓存的最大大小,并计算EffectivePercentagePhysicalMemoryLimit
属性
您可以获得有关文档的更多信息:
另一个选项是禁用Azure自动重启机制。它被调用,您可以通过将
网站\u PROACTIVE\u AUTOHEAL\u ENABLED
设置为False
来禁用它:
WEBSITE\u PROACTIVE\u AUTOHEAL\u ENABLED
”并将其设置为“False
”Hi@CyrillDurand,谢谢你的回答。认为已经有一半的帮助了。我仍然在寻找完美的Azure设置。也就是说,仅使用60%的内存感觉像是对其他40%内存的巨大浪费。@DirkBoer我添加了一种禁用自动重启机制的方法