Notei que os processos dockerd e docker-proxy estavam usando mais CPU do que o esperado, 15% e 24% respectivamente, então decidi usar a rede "host" para evitar a sobrecarga. No entanto, os resultados que obtive foram muito piores. Como explicar isso?
O mesmo não acontece com um contêiner nginx (o desempenho aumenta de 43k req / seg para 48k req / seg com a rede "host").
Iniciar o contêiner do CouchDB: docker run -d -p 5984:5984 couchdb
$ wrk -d 60 http://localhost:5984/mydb/mydoc
Running 1m test @ http://localhost:5984/mydb/mydoc
2 threads and 10 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 1.51ms 197.54us 7.81ms 75.74%
Req/Sec 3.32k 111.59 3.60k 71.58%
396492 requests in 1.00m, 698.02MB read
Requests/sec: 6608.12
Transfer/sec: 11.63MB
Iniciar o contêiner do CouchDB: docker run --net=host -d -p 5984:5984 couchdb
$ wrk -d 60 http://localhost:5984/mydb/mydoc
Running 1m test @ http://localhost:5984/mydb/mydoc
2 threads and 10 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 42.98ms 1.17ms 54.99ms 96.96%
Req/Sec 116.79 13.73 151.00 56.00%
13966 requests in 1.00m, 24.59MB read
Requests/sec: 232.57
Transfer/sec: 419.29KB