Appfabric缓存错误:ASP.Net会话状态和应用程序池的问题 [英] Appfabric caching bug: issue with ASP.Net session state and application pool

查看:78
本文介绍了Appfabric缓存错误:ASP.Net会话状态和应用程序池的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Appfabric和应用程序池中缓存会话似乎存在错误。似乎当会话从缓存中删除,并且应用程序池因不活动而超时时,有时会话会完全中断并且
会话将不再添加到缓存中,直到服务重新启动。发生这种情况后,您将看到以下错误消息。


 


ErrorCode:SubStatus:提到的密钥不存在。根据Key创建对象以修复错误。



来源:Microsoft.ApplicationServer.Caching.Client



Stack:位于Microsoft.ApplicationServer.Caching.DataCache.InternalPutAndUnlock的Microsoft.ApplicationServer.Caching.DataCache.ThrowException(ResponseBody respBody)(String key,Object value,DataCacheLockHandle lockHandle,TimeSpan timeout,DataCacheTag []标签,
字符串区域)在Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider.SetAndReleaseItemExclusive的Microsoft.ApplicationServer.Caching.DataCache.PutAndUnlock(String key,Object value,DataCacheLockHandle lockHandle,TimeSpan timeout)(HttpContext
context,String id,SessionStateStoreData item,对象lockId,布尔newItem)在系统的System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
的System.Web.SessionState.SessionStateModule.OnReleaseState(Object source,EventArgs eventArgs)。 Web.HttpApplication.Execute步骤(IExecutionStep步骤,布尔&已完成同步)


 


目标:Void ThrowException(Microsoft.ApplicationServer.Caching.ResponseBody)






解决方案

我发现将app pool idle-timeout值设置为0是对此的临时修复问题

There seems to be a bug with caching the session in Appfabric and the application pool. It seems as though when the session is removed from the cache, and the the application pool times out for inactivity, that sometimes the session breaks completely and the session will no longer be added to the cache until the service is restarted. After this occurs you will see the following error messge.

 

ErrorCode:SubStatus:Key referred to does not exist. Create objects based on a Key to fix the error.

Source: Microsoft.ApplicationServer.Caching.Client

Stack: at Microsoft.ApplicationServer.Caching.DataCache.ThrowException(ResponseBody respBody) at Microsoft.ApplicationServer.Caching.DataCache.InternalPutAndUnlock(String key, Object value, DataCacheLockHandle lockHandle, TimeSpan timeout, DataCacheTag[] tags, String region) at Microsoft.ApplicationServer.Caching.DataCache.PutAndUnlock(String key, Object value, DataCacheLockHandle lockHandle, TimeSpan timeout) at Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider.SetAndReleaseItemExclusive(HttpContext context, String id, SessionStateStoreData item, Object lockId, Boolean newItem) at System.Web.SessionState.SessionStateModule.OnReleaseState(Object source, EventArgs eventArgs) at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

 

Target: Void ThrowException(Microsoft.ApplicationServer.Caching.ResponseBody)



解决方案

I've found that setting the app pool idle-timeout value to 0 is a temporary fix for this issue.


这篇关于Appfabric缓存错误:ASP.Net会话状态和应用程序池的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆