作为将现有网站从.NET 4迁移到.NET 4.5.1的计划的一部分,我们了解到我们需要从使用Enterprise Library 5迁移到版本6.
我们在版本5中使用了缓存块,但已从版本6中删除,因此我们计划(as recommended)重构我们的代码以改为使用System.Runtime.Caching
。
我们希望确保Web.config
的设置(System.Runtime.Caching
)将为我们提供与我们目前用于企业库5的设置相同(或类似...)的行为缓存块。
我们目前使用的企业库5缓存块设置是:
<configSections>
<section name="cachingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
</configSections>
<cachingConfiguration defaultCacheManager="Cache Manager">
<cacheManagers>
<add name="Cache Manager"
type="Microsoft.Practices.EnterpriseLibrary.Caching.CacheManager, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
expirationPollFrequencyInSeconds="60"
maximumElementsInCacheBeforeScavenging="1000"
numberToRemoveWhenScavenging="10"
backingStoreName="NullBackingStore" />
</cacheManagers>
<backingStores>
<add type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
name="NullBackingStore" />
</backingStores>
</cachingConfiguration>
我们计划使用的System.Runtime.Caching
设置为:
<system.runtime.caching>
<memoryCache>
<namedCaches>
<add name="default"
cacheMemoryLimitMegabytes="10"
physicalMemoryLimitPercentage="0"
pollingInterval="00:01:00" />
</namedCaches>
</memoryCache>
</system.runtime.caching>
我们是否在正确的轨道上?
请注意,我们的网站没有全面的负载测试工具,因此在发布网站之前无法令人满意地测试我们对缓存的使用。