IIS上的ModSecurity:单线程?

我在运行IIS 8.5的Web服务器上安装了ModSecurity,并且注意到响应时间增加了15倍(0.15 ms / request vs. 2.2 ms / request),即使SecEngine设置为off。 当安装ModSecurity时,似乎IIS运行在单线程模式下,因为IIS工作进程只使用ModSecurity大约15%的CPU,但是如果没有它,可以使用多达95%的CPU。

我使用ModSecurity安装的CSR中的conf文件。 我是否缺less一些configuration?

我已经设法通过在GitHub上查看ModSecurity IIS模块的代码来确认您的意见(和我的意见)。

我发现CMyHttpModule::OnSendResponseCMyHttpModule::OnPostEndRequestCMyHttpModule::OnBeginRequest里面的CMyHttpModule::OnBeginRequest被封装在里面

 EnterCriticalSection(&m_csLock); ... LeaveCriticalSection(&m_csLock); 

结合CMyHttpModuleFactory::GetHttpModule()的单例方法和m_csLock是只在其构造函数中初始化的CMyHttpModulevariables(仅调用一次,因为它对所有请求使用相同的实例)的事实,意味着所有的请求在不同的线程上到达,一个一个地执行。

我也在GitHub的ModSecurity项目页面上创build了这个问题的勾号 。