2016-02-27 128 views
2

我想使用Redis的会话状态与我的Windows Azure云网站。我正在使用1 GB标准层。我正在使用P1高级数据库。我正在测试本地主机。我的缓存和网站位于东部美国。Redis的会话状态EVAL超时

我储存200 - 在会话状态400的对象,其中包括订单和付款。

以下是错误:

类型“System.TimeoutException”的一个例外发生在Microsoft.Web.RedisSessionStateProvider.dll但在用户代码

附加信息没有处理:超时执行EVAL,研究所:0,MGR:无效,ERR:从未,队列:7,曲:1,适量:6,QC:0,WR:1,WQ:1,在:0,AR:0,IOCP:(忙碌= 0,免费= 1000,最小= 8,最大值= 1000),工人(BUSY = 1,免费= 4094,最小= 8,最大值= 4095),CMDCMDLINE:XX

这里是我的设置:

<sessionState mode="Custom" customProvider="MySessionStateStore"> 
    <providers> 
    <add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="XX.redis.cache.windows.net" accessKey="XX" ssl="true" syncTimeout="3000" connectionTimeoutInMilliseconds="5000" operationTimeoutInMilliseconds="1000" retryTimeoutInMilliseconds="3000" /> 
    </providers> 
</sessionState> 

回答

0

也许后期回答,但从来没有更少...
在这种情况下,它看起来像缓存内的信息量是你的问题。 Redis的是微调,以获取大量的小缓存信息,而不是一个单一的巨大串...

另一件事,我建议你尝试是增加数分钟IOCP和工作线程的数目在...我的情况(2核心机器)我想出最好的数字是100 ...