C# 快速爆破同时连接时IIS上的服务性能差
我开发了一个在ServiceStack上运行的相当简单的web服务。我已经将其部署到一个IIS实例,现在正在对其进行负载测试 出于某种原因,我看到了非常糟糕的表现。随着同时请求数量的增加,每个请求的平均运行时间迅速上升,从大约70毫秒(由于网络延迟)一直上升到5秒或更长时间(当我开始运行多个同时请求时)。奇怪的是,有些请求仍然在70毫秒内完成,只是大多数请求的速度要慢得多C# 快速爆破同时连接时IIS上的服务性能差,c#,performance,iis,
servicestack,C#,Performance,Iis,
servicestack,我开发了一个在ServiceStack上运行的相当简单的web服务。我已经将其部署到一个IIS实例,现在正在对其进行负载测试 出于某种原因,我看到了非常糟糕的表现。随着同时请求数量的增加,每个请求的平均运行时间迅速上升,从大约70毫秒(由于网络延迟)一直上升到5秒或更长时间(当我开始运行多个同时请求时)。奇怪的是,有些请求仍然在70毫秒内完成,只是大多数请求的速度要慢得多 我的服务不是很苛刻;事实上,当我检查运行IIS的机器的利用率时,我发现在整个测试过程中,它的内存使用、CPU使用和网络带宽使
我的服务不是很苛刻;事实上,当我检查运行IIS的机器的利用率时,我发现在整个测试过程中,它的内存使用、CPU使用和网络带宽使用都可以忽略不计。那么,发生了什么事?我做错什么了吗?我们提供的信息太少,无法帮助您。您需要使用探查器来查看happens@AK_:您会推荐哪种探查器?正如我所说,机器上的CPU使用率可以忽略不计,因此我不确定探查器是否会告诉我任何有用的信息。是的,它会告诉我代码花费大部分时间的地方,但问题是,它实际上并没有在任何事情上花费那么多时间。服务代码在服务请求时会阻塞吗?随时随地同步io?visual studio pro/ultimate版本附带了一个探查器,JetBrains有一个非常好的探查器,但我个人喜欢RedGates:只是一个建议。这可能是因为iis中的并发线程数量有限吗?