我目前正在使用 Visual Studio 测试套件负载测试器来模拟不同服务器上的 Web 应用程序的负载。(不,我不是针对生产进行测试)。我相信它正在为每个模拟用户创建一个线程。
当我这样做时,我遇到了一个可能无关的蓝屏。
但这提出了问题。
在我的 CPU 无法处理生成那么多请求之前,我可以使用多少个线程?
眼镜:
英特尔酷睿 2 双核 CPU T7700 @ 2.40 GHz 2.40 GHz(32 位)
我还需要提供任何其他信息或背景吗?
我目前正在使用 Visual Studio 测试套件负载测试器来模拟不同服务器上的 Web 应用程序的负载。(不,我不是针对生产进行测试)。我相信它正在为每个模拟用户创建一个线程。
当我这样做时,我遇到了一个可能无关的蓝屏。
但这提出了问题。
在我的 CPU 无法处理生成那么多请求之前,我可以使用多少个线程?
眼镜:
英特尔酷睿 2 双核 CPU T7700 @ 2.40 GHz 2.40 GHz(32 位)
我还需要提供任何其他信息或背景吗?
这取决于您正在运行的 .NET 版本。您可以在 .NET 3.5 上为处理器提供 250 个工作线程。
查看这篇MSDN 文章。
您可以在运行此测试时监控这些性能计数器。当您增加并发性时,它会让您了解您的实际限制是什么:
这类似于 Unix 平均负载,因为它指示线程等待执行。这与 CPU 利用率 % 不同,后者仅告诉您工作与空闲的时间。
这个数字是相对于每个系统的。但是,通过一些基准测试,您可以使用此计数器与处理能力的上限相关联。
需要考虑的一些限制因素: