Problems Caused by ab Testing docker and the Machine

  docker, question

First prove to be accessible
clipboard.png
192.168.99.100 is docker’s
127.0.0.1:9889 is local

Test command ab -c 100 -n 100000http://xxx

Test nginx display html
Worker: 1 worker
Cpu: a core
men:1G
Environment: docker(ubuntu 16)


clipboard.png

Second time (nginx.conf ibid.)
Test nginx display html
Worker: 1 worker
Cpu: quad core
men:8G
Environment: local (Mac)


clipboard.png

Third time (except worker_processes=4; Nginx.conf configuration is the same as above)
Test nginx display html
Workers: 4 workers
Cpu: quad core
men:8G
Environment: local (Mac)

clipboard.png

Change the number of commands to 1W

clipboard.png

This is exactly why the container has higher processing power than the native one. Even if I have opened phpStorm, qq, chrome, etc. locally, there is not such a big gap. Can you explain the reason? Another question is why most kernels are basically used when accessing cpu?

clipboard.png

1.ab simulation is to open threads and consume system resources, most of which are used to run threads.
2. Why can’t I see which one has high performance, so the test data are all erroneous.