【发布时间】:2015-10-24 17:07:43
【问题描述】:
我们有一个 n 层 (.net) Web 应用程序,其中有一个 Web 层 -> 应用层 -> 数据库。
在我们进行负载测试(使用 jmeter)之前,一切正常。 当我们模拟 100 个并发用户时,经过 3 -4 分钟。 jmeter 开始记录 SocketException,连接重置。当我们检查应用程序日志(我们记录应用程序内部的所有异常)和系统事件时,我们什么也找不到。
我们没有对 Web 层的性能采取任何特殊措施。但是在作为 wcf 应用程序的 App 层上,我们使用了每次调用/多次并发。我们在应用层使用了以下配置:
<serviceThrottling
maxConcurrentCalls = "200"
maxConcurrentSessions = "200"
maxConcurrentInstances = "200"/>
。 . .
<binding name="defaultNetTcpBinding" closeTimeout="00:10:00" sendTimeout="00:10:00" receiveTimeout="00:10:00" openTimeout="00:10:00" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647"
maxConnections="200" listenBacklog="200">
除此问题外,我们的应用层使用率也较高(50-60%)。以下是我们的 3 个虚拟机的配置(每层一个)
Web 服务器(数量 = 1) 处理器 Intel Xeon CPU X5675 @3.07 GHz 2.19 GHz
Number of Cores (Virtual) 8
RAM 8GB
Operating System Windows Sever 2012 Standard
Processor Type 64 Bit
Softwares Installed NET Framework 4.5
应用服务器(数量 = 1) 处理器 Intel Xeon CPU X5675 @3.07 GHz 3.07 GHz
Number of Cores (Virtual) 8
RAM 8GB
Operating System Windows Sever 2012 Standard
Processor Type 64 Bit
Softwares Installed NET Framework 4.5
数据库服务器(数量 =1) 处理器 Intel Xeon CPU E7-4830v2 @ 2.20 GHz 2.19 GHz
Number of Cores (Virtual) 8
RAM 8GB
Operating System Windows Sever 2012 Standard
Processor Type 64 Bit
Softwares Installed Microsoft SQL Sever 2014
【问题讨论】:
-
您在 JMeter 中选择了哪个 HTTP 请求实现? (java, HTTPClient4, HTTPClient 3.1)
-
不确定。可以与我们的 QA 核对并告知您。你能给我一些提示吗?
-
对答案有任何反馈吗?
标签: .net performance jmeter