2010-07-28 91 views
6

当您将会话状态存储在缓存中时,创建AppFabric缓存的“最佳”参数是什么? MSDN Cache-Related Commands存储ASP.NET会话状态时AppFabric Cache的新缓存参数

powershell命令行:

New-Cache [-CacheName] <String> [-Eviction <String>] [-Expirable <String>] [-Force [<SwitchParameter>]] [-NotificationsEnabled <String>] [-Secondaries <Int32>] [-TimeToLive <Int64>] 
  • CacheName:<应用程序名称> -session状态
  • 仲:1
  • 逐出(高可用性服务器故障的情况下导通): ?
  • 有效期:?
  • TimeToLive:?
  • Force:?
  • NotificationsEnabled:?

因为我不想除非会话已经或者通过代码或会话超时遗弃被删除我的会议做...

驱逐,我认为“无”和expireable,我会认为是False。

我测试并调用Session.Abandon会从缓存中删除对象。我也测试过如果通过扩展我的会话,缓存中的会话对象也被扩展。这似乎确实是“正确”的方式。

回答

3

来自MS员工的A post确认我的发现。

2)由于您的问题是,在上下文中的会话状态的 ,当您使用 会话状态提供者,会话 对象存储在缓存中有 超时等于ASP.Net会话 时间到。每次访问会话为 时,高速缓存中会话 对象的超时值也会重置为会话超时的 。确保 会话对象仅在ASP.Net 会话超时。超时之后从 到期。

我仍然需要创建一个命名缓存来获得高可用性,但看起来像我可以将其他设置保留为默认值。

New-Cache projectname-session-state -Secondaries 1 
+0

依然[没有文档](https://msdn.microsoft.com/en-us/library/ee790859(V = azure.10)的.aspx)在此,毫无疑问的AppFabric被弃用。 – felickz 2015-02-19 15:47:59