我们已经检测了一个.Net 4.0应用程序,该应用程序通过AppDynamics APM代理(v4.5.2)在Windows 2012的IIS8.0中运行。
此服务器还安装了McAfee Endpoint Protection v10.6.0.542和Threat Prevention v10.6.0.672。
安装APM代理后,在典型负载下,CPU要高得多(在2个vCPU上,代理约为50-60%,而没有代理则约为10%)。在高负载下,应用程序也开始变得不稳定(请求开始排队并超时,响应时间变得非常高,错误开始出现)。
我们注意到,启用McAfee后,它将向w3wp进程中注入两个DLL-EpMPApi.dll和EpMPThe.dll。我们使用Process Explorer进行了检查,查看了该进程的已加载DLL。
我们运行了各种性能测试组合:
我们尝试将w3wp.exe添加为McAfee中的例外,但是我们看到DLL仍在加载,并且仍然出现CPU过多和性能不佳的情况。
在内存转储中,我们始终看到应用程序线程在等待EpMPApi.dll使用的关键部分。它似乎与尝试建立套接字连接的应用程序有关(由于所有请求都涉及对下游系统的WCF调用,因此它经常这样做)。
我们想了解是否/如何将McAfee配置为完全排除w3wp.exe,或者停止APM代理似乎与之交互不良的任何活动。
我们还在APM代理方面进行工作,以了解我们是否可以采取任何措施来防止或解决此问题。
谢谢!