0. my os , hardware etc..
os:centos7.3
kernel: 4.16.12
traefik version:2.5
test tool: wrk (latest version)
hardware: cpu:20cores,memory:12GB,disk: SATA
cpu MHz : 2194.955
model name : Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz
processor : 19
1. my traefik.yaml
0> cat traefik.yaml
global:
checkNewVersion: true
sendAnonymousUsage: true
entryPoints:
web:
address: :80
websecure:
address: :443
udp10911:
address: ":10911/udp"
metrics:
address: ":10900"
metrics:
prometheus:
entryPoint: metrics
addEntryPointsLabels: true
addRoutersLabels: true
addServicesLabels: true
#log:
# level: ERROR
# filePath: log/traefik.log
# format: json
accessLog:
filePath: log/access.log
bufferingSize: 1000
format: json
api:
insecure: true
dashboard: true
#ping: {}
#tracing:
# jaeger: {}
providers:
file:
directory: /data1/traefik/config
watch: true
#etcd:
# endpoints:
# - "127.0.0.1:2379"
#kubernetesIngress:
#throttleDuration: "10s"
#allowEmptyServices: "false"
#namespaces:
# - "default"
# - "production"
#labelselector: "app=traefik"
cat 10001-gotest.com.yaml
http:
#middlewares:
# limit:
# buffering:
# maxRequestBodyBytes: 2000000 #2MB
routers:
my-router:
rule: "Host(`gotest.com`)"
service: my-service
my-router1:
rule: "Host(`gotest1.com`)"
service: my-service
services:
my-service:
loadBalancer:
servers:
#- url: "http://10.41.252.57:80/"
- url: "http://10.17.8.42:80/"
- url: "http://10.17.8.43:80/"
- url: "http://10.17.8.44:80/"
- url: "http://10.17.8.24:80/"
- url: "http://10.17.8.94:80/"
- url: "http://10.17.8.95:80/"
middlewares:
test-retry:
retry:
attempts: 1
initialInterval: 100ms
2. my router
3. my test command
wrk -t 256 -c 1000 -d 1h http://gotest.com
cat /etc/host
10.17.8.64 gotest.com
traefik deploy on 10.17.8.64
4. summary
the qps
nginx:90000 (turn on access log)
openresty:90000 (turn on access log)
traefik:45000(turn off accesslog)
traefik:220000(turn on accesslog)
5. my question
why turn on accesslog ,traefik only have a half qps of turn off? thanks !!!!!