我使用AmazonWebServices中的DynamoDB运行ASP.NET Web服务,以进行会话状态处理。
但是今天我遇到了大量异常,因为错误导致了应用程序级别的冒泡。是否有其他人遇到这些错误。我在另一周也有这种行为,它持续了大约1-2小时然后就消失了。
我完全按照这里描述的那样使用它: http://docs.aws.amazon.com/AWSSdkDocsNET/latest/DeveloperGuide/net-dg-dynamodb-session.html
我使用AWS Sessionstate提供程序的2.3.0.1版本(来自AWS SDK)
这是堆栈跟踪:
System.Net.WebException: The remote server returned an error: (400) Bad Request.
at System.Net.HttpWebRequest.GetResponse()
at Amazon.Runtime.Internal.HttpRequest.GetResponse()
有什么想法吗?
编辑: 根据要求提供Web.config的合适部件
<appSettings>
<add key="AWSAccessKey" value="XXXXXXXXXXXX"/>
<add key="AWSSecretKey" value="XXXXXXXXXXXX"/>
</appSettings>
<compilation>
<assemblies>
<add assembly="AWS.SessionProvider, Version=2.3.0.1, Culture=neutral, PublicKeyToken=9f476d3089b52be3" />
<add assembly="AWSSDK, Version=2.3.0.1, Culture=neutral, PublicKeyToken=9f476d3089b52be3" />
</assemblies>
</compilation>
<system.web>
<sessionState timeout="20" mode="Custom" customProvider="DynamoDBSessionStoreProvider">
<providers>
<add name="DynamoDBSessionStoreProvider" type="Amazon.SessionProvider.DynamoDBSessionStateStore" Region="eu-west-1" />
</providers>
</sessionState>
</system.web>
EDIT2: 在错误开始的同时,我确实看到了很多受限制的请求,即使你在配置的吞吐量上似乎也没有接近。然而,在此期间,我发现ElasticLoadBalancer的监控流量略有下降(预计在营业日结束时)。所以它并不觉得我获得了更多的点击,因此得到了限制请求。
动力学监测的Screendump http://1drv.ms/1vU7BzO
答案 0 :(得分:0)
我的猜测将是以下之一,因为它看起来大部分时间都有效,偶尔会有问题,然后在没有你做任何事情的情况下恢复: