我们有一个WebAPI
实例,它使用EF6在其AzureSQL上执行CRUD操作。
我们的流量非常低(大约20 req / sec),通常每个请求大约需要15-150ms。 我们始终看到,每隔45-60分钟,有些人要求每次约13秒。
DB非常小 - 大约6mb。 在SQL日志中,我们看到查询大约需要15ms才能运行。
任何人都可以帮助我解决问题吗?
在两个示例中,秒表在DB记录时显示13秒以上 显示15ms
Stopwatch watch = Stopwatch.StartNew();
var result = await Repository.EntitiesSet
.Where(entity => entity.PrimaryKey == PrimaryKey); }
.ToListAsync();
Logger.LogDbAccess(callData(), watch.ElapsedMilliseconds);
return result;
和
Stopwatch watch = Stopwatch.StartNew();
var result = await Repository.EntitiesSet
.FirstOrDefaultAsync(t => t.secondaryId.Equals(secondaryId));
Logger.LogDbAccess(callData(), watch.ElapsedMilliseconds);
return result;