我开发了一个 RESTfulWCF
服务 ( WebHttpBinding
)。我使用 jMeter 进行了性能测试。测试计划包含服务中的一项操作,将在 100 个并发线程中调用。但是,我注意到在运行测试the first 20 to 30 threads are taking considerable amount of time to get the response (say 10-15 seconds)
之后,所有其他剩余的线程将在 2-3 秒内完成它们的执行。在我看来,前几个线程似乎阻塞了在它们之后到达服务器的线程。
我的服务具有以下配置:
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall, ConcurrencyMode = ConcurrencyMode.Multiple)]
并且,
<serviceThrottling maxConcurrentCalls="300" maxConcurrentSessions="300"/>
有人可以就导致这种初始延迟的原因给出一些指示吗?