2014-01-27 46 views
4

在我整个Caching.ScavengeInterval项附带的web.config中的缓存设置展望:哪些Sitecore缓存受Caching.ScavengeInterval影响,以及如何操作?

<!-- SCAVENGE INTERVAL 
Determines how often scavengable caches are scavenged. 
Default value: 3 minutes. 
--> 
<setting name="Caching.ScavengeInterval" value="00:03:00" /> 

用于缓存不会影响,并有内置于Sitecore的自动缓存清除? 缓存清理在Sitecore上下文中做了什么?

我对它是否会影响IsUserInRole缓存特别感兴趣。

回答

6

这不会直接回答你的问题,但希望它会推动正确的方向。

您可以使用Sitecore的岩石来查看当前高速缓存,有一列,它告诉你哪些缓存被标记为scavengable:

http://www.sitecore.net/Community/Technical-Blogs/Trevor-Campbell/Posts/2013/02/28-Days-of-Sitecore-Rocks-Manage-Part-3.aspx

在默认安装Sitecore的它仅影响GEOIP和ClientDataStore。不幸的是:

客户端数据存储缓存存储有关每个认证用户的信息,例如用户名或其他用户属性。

Sitecore Cache Configuration Guide - 第20页

这是对你的需要了错误的缓存,你有兴趣的IsUserInRoleCache和被标记为Scavengable:false

您可以挖掘到自己,用dotPeek decompiler并采取看看下面的类Sitecore.Kernel.dll

  • Sitecore.Caching.Cache
  • Sitecore.Caching.CacheManager
  • Sitecore.Configuration.ClientDataStore
相关问题