2016-09-27 39 views
0

我有点有趣的情况。我们Azure的SQL实例在100 DTU马克塞斯一定的查询和查询将返回超时:最大出Azure SQL DTU与SQL内部代码,但不是从SQL Server Management Studio

SqlException (0x80131904): Timeout expired. The timeout period 
elapsed prior to completion of the operation or the server is not 
responding. This failure occurred while attempting to connect to the 
routing destination. 

如果我运行完全相同的查询(与参数硬编码),在SQL Server Management Studio中,它仍然需要在DTU高达25%,但这与100%还有很大差距。该服务器上没有其他运行。还有一些其他查询在之前/之后运行。但是,如果我们只是运行它们,没有什么刺激。

任何想法?

回答

0

我的问题的分析是这样的..

首先当DTU的被刷爆了,如果查询由于失败了,你不会得到时间out..Below是错误消息你会得到。 。

资源ID:%d。数据库的%s限制是%d,并且已达到。欲了解更多信息

你可以试着在打开多个资源密集型查询

其次,当你得到超时的,如你的问题指出,这主要是由于查询等待资源喜欢说一些数据库IO ,内存..

我们面临着类似的超时的,但大部分都是通过更新的统计和重建索引固定的,他们的其余部分,我们优化

+0

我的应用程序的Azure DTU的最大程度的发挥,我看到超时/任务取消错误信息。 AFAIK请求只是排队,直到超时。我从来没有见过你发布的资源ID消息,但也许我正在寻找错误的地方。 –

相关问题