我有一个webjob调用长时间运行的存储过程,以保持超时。任何人都可以帮忙吗?Azure - 调用存储过程时的WebJob超时
腹板作业用下面的代码称为:
static void Main()
{
ApplicationDbContext context = new ApplicationDbContext();
context.Database.CommandTimeout = 6000;
context.PopulateJobTypeDescendants();
}
上下文(ApplicationDbContext)的方法如下所示:
public void PopulateJobTypeDescendants()
{
Database.ExecuteSqlCommand("PopulateJobTypeDescendants");
}
以下引发异常当web作业是跑。我们已经读过,它可能与服务器上的计划/ DTU有关,所以我们从S1 - > S3,但仍然没有解决问题,并且过程在45秒后爆炸。奇怪的是,如果我从SSMS连接到azure sql db并调用存储过程,它可以正常工作。
[2016年7月11日22时25分02秒> e2cf50:ERR]未处理的异常: System.Data.SqlClient.SqlException:超时过期。在操作完成之前已经过去的时间段为 ,或者服务器为 未响应。尝试连接到路由目标的 时发生此故障。尝试连接到原始服务器的 花费的持续时间为 - [Pre-Login] initialization = 14; handshake = 26; [登录]初始化= 0;认证= 0; [登录后] complete = 1; ---> System.ComponentModel.Win32Exception:等待 操作超时
连接字符串如下所示:
<add name="TempsContext" connectionString="Server=tcp:[XXX],1433;Database=temps_testing;User ID=[XXX];Password=[XXX];Trusted_Connection=False;Encrypt=True;Connection Timeout=600;" providerName="System.Data.SqlClient" />