Thanks for the quick reply 
I tried disable the cache you mentioned, and the result doesn’t change.
Besides, the result doesn’t contains any cache headers:
$ curl -v http://tomcat:8080/examples/jsp/jsp2/simpletag/book.jsp
- Trying 192.168.101.11…
- TCP_NODELAY set
- Connected to tomcat (192.168.101.11) port 8080 (#0)
GET /examples/jsp/jsp2/simpletag/book.jsp HTTP/1.1
Host: tomcat:8080
User-Agent: curl/7.58.0
Accept: /
< HTTP/1.1 200
< Set-Cookie: JSESSIONID=0DD629B87A653D199001AB47C1FF1298; Path=/examples; HttpOnly
< Content-Type: text/html;charset=ISO-8859-1
< Content-Length: 951
< Date: Fri, 10 Apr 2020 06:52:51 GMT
<
About the different settings of 3 tools issue you mentioned, em…, since they are different tools, so only I can do is to make them as same as possible.
Gatling max vusers is 2250 (below is gatling outpu):
[--------------------------------------------------------------------------] 0%
waiting: 0 / active: 2250 / done: 0
Gatling vuser rampup config:
object BenchmarkConfig {
val rampFrom = 50;
val rampTo = 100;
val rampDuring = 30;
val totalDuring = 120;
val uri = “/examples/jsp/jsp2/simpletag/book.jsp”;
}
setUp(
scnTomcat.inject(
rampUsersPerSec(BenchmarkConfig.rampFrom) to BenchmarkConfig.rampTo during (BenchmarkConfig.rampDuring seconds),
).protocols(tomcatConf),
)
The Jmeter script number of threads is also 2250, and ramp-up period 15 seconds.
Since wrk2 doesn’t support ramp up, I can only set connection to 2250.
As you can see, settings of 3 tools are quite similar, it doesn’t make sense to get so different result: jmeter and wrk2 got only 1/3 throughput of gatling.
在 2020年4月10日星期五 UTC+8下午2:38:36,Stéphane Landelle写道: