我们正在使用 Play Framework 在 REST 服务器上运行重负载测试(jmeter:350 个线程,35M 总请求),并在大约 2 小时后遇到以下错误。我们删除了其他组件,以便 request 只是接受请求而不执行任何操作。任何人都有任何想法,或者只是 Play 框架无法处理这样的重负载?
2014/07/05 11:59:38 WARN - com.company.test.RestTest2: Run TestSQL throw error java.lang.Exception: com.sun.jersey.api.client.ClientHandlerException: java.net.SocketTimeoutException: Read timed out
at com.company.dispatcher.RexsterRESTTaskDispatcher.dispatchTask(RexsterRESTTaskDispatcher.java:76)
at com.company.test.RestTest2.runTest(RestTest2.java:375)
at org.apache.jmeter.protocol.java.sampler.JavaSampler.sample(JavaSampler.java:191)
at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)
at java.lang.Thread.run(Thread.java:744)
application.conf 的一部分:
....
db.pool.timeout=100000
play {
akka {
akka.loggers = ["akka.event.Logging$DefaultLogger", "akka.event.slf4j.Slf4jLogger"]
loglevel = WARNING
actor {
default-dispatcher = {
fork-join-executor {
parallelism-factor = 64
parallelism-max = 1000
}
}
}
}
}
今天就出现这个错误。我花了一段时间才发现其中一个窗口(svchost
)进程正在占用 Jmeter 服务器尝试使用的 1099 端口。
当我尝试启动时,我得到了一个提示Jmeter-Server.bat
手动归档。然后,以下 PowerShell 命令提供了该过程的详细信息。关闭该进程后,Jmeter 客户端再次开始连接。
Get-Process -Id (Get-NetTCPConnection -LocalPort 1099).OwningProcess
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)