[scripts] Add support for HTTP/3 benchmarks.
This commit is contained in:
parent
b7c641201e
commit
d02408bea5
3 changed files with 150 additions and 96 deletions
|
@ -23,6 +23,17 @@
|
||||||
:: benchmark / server / http2-go / 1x2 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http2-go "${@}" --processes 1 --threads 2
|
:: benchmark / server / http2-go / 1x2 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http2-go "${@}" --processes 1 --threads 2
|
||||||
:: benchmark / server / http2-go / 2x2 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http2-go "${@}" --processes 2 --threads 2
|
:: benchmark / server / http2-go / 2x2 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http2-go "${@}" --processes 2 --threads 2
|
||||||
|
|
||||||
|
:: benchmark / server / http2-go-split / 1x1 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http2-go-split "${@}" --processes 1 --threads 1
|
||||||
|
:: benchmark / server / http2-go-split / 2x1 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http2-go-split "${@}" --processes 2 --threads 1
|
||||||
|
:: benchmark / server / http2-go-split / 1x2 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http2-go-split "${@}" --processes 1 --threads 2
|
||||||
|
:: benchmark / server / http2-go-split / 2x2 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http2-go-split "${@}" --processes 2 --threads 2
|
||||||
|
|
||||||
|
:: benchmark / server / http3-quic / 1x1 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http3-quic "${@}" --processes 1 --threads 1
|
||||||
|
:: benchmark / server / http3-quic / 1x2 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http3-quic "${@}" --processes 1 --threads 2
|
||||||
|
|
||||||
|
:: benchmark / server / http-all / 1x1 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http-all "${@}" --processes 1 --threads 1
|
||||||
|
:: benchmark / server / http-all / 1x2 :: exec -- "${ZRUN[@]}" ':: benchmark / server / inmem' http-all "${@}" --processes 1 --threads 2
|
||||||
|
|
||||||
|
|
||||||
:: benchmark / wrk / http / 16384 :: exec -- "${ZRUN[@]}" ':: benchmark / wrk / http' "${@}" --threads 2 --connections 16384 --timeout 6s
|
:: benchmark / wrk / http / 16384 :: exec -- "${ZRUN[@]}" ':: benchmark / wrk / http' "${@}" --threads 2 --connections 16384 --timeout 6s
|
||||||
:: benchmark / wrk / http / 4096 :: exec -- "${ZRUN[@]}" ':: benchmark / wrk / http' "${@}" --threads 2 --connections 4096
|
:: benchmark / wrk / http / 4096 :: exec -- "${ZRUN[@]}" ':: benchmark / wrk / http' "${@}" --threads 2 --connections 4096
|
||||||
|
@ -70,20 +81,35 @@
|
||||||
:: benchmark / h2load / https / 2 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 1 --clients 2 --h1
|
:: benchmark / h2load / https / 2 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 1 --clients 2 --h1
|
||||||
:: benchmark / h2load / https / 1 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 1 --clients 1 --h1
|
:: benchmark / h2load / https / 1 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 1 --clients 1 --h1
|
||||||
|
|
||||||
:: benchmark / h2load / http2 / 16384 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 16384 --npn-list=h2 --connection-inactivity-timeout 6s
|
:: benchmark / h2load / http2 / 16384 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 16384 --connection-inactivity-timeout 6s
|
||||||
:: benchmark / h2load / http2 / 4096 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 4096 --npn-list=h2
|
:: benchmark / h2load / http2 / 4096 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 4096
|
||||||
:: benchmark / h2load / http2 / 2048 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 2048 --npn-list=h2
|
:: benchmark / h2load / http2 / 2048 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 2048
|
||||||
:: benchmark / h2load / http2 / 1024 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 1024 --npn-list=h2
|
:: benchmark / h2load / http2 / 1024 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 1024
|
||||||
:: benchmark / h2load / http2 / 512 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 512 --npn-list=h2
|
:: benchmark / h2load / http2 / 512 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 512
|
||||||
:: benchmark / h2load / http2 / 256 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 256 --npn-list=h2
|
:: benchmark / h2load / http2 / 256 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 256
|
||||||
:: benchmark / h2load / http2 / 128 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 128 --npn-list=h2
|
:: benchmark / h2load / http2 / 128 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 128
|
||||||
:: benchmark / h2load / http2 / 64 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 64 --npn-list=h2
|
:: benchmark / h2load / http2 / 64 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 64
|
||||||
:: benchmark / h2load / http2 / 32 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 32 --npn-list=h2
|
:: benchmark / h2load / http2 / 32 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 32
|
||||||
:: benchmark / h2load / http2 / 16 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 2 --clients 16 --npn-list=h2
|
:: benchmark / h2load / http2 / 16 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 2 --clients 16
|
||||||
:: benchmark / h2load / http2 / 8 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 1 --clients 8 --npn-list=h2
|
:: benchmark / h2load / http2 / 8 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 1 --clients 8
|
||||||
:: benchmark / h2load / http2 / 4 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 1 --clients 4 --npn-list=h2
|
:: benchmark / h2load / http2 / 4 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 1 --clients 4
|
||||||
:: benchmark / h2load / http2 / 2 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 1 --clients 2 --npn-list=h2
|
:: benchmark / h2load / http2 / 2 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 1 --clients 2
|
||||||
:: benchmark / h2load / http2 / 1 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / https' "${@}" --threads 1 --clients 1 --npn-list=h2
|
:: benchmark / h2load / http2 / 1 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http2' "${@}" --threads 1 --clients 1
|
||||||
|
|
||||||
|
:: benchmark / h2load / http3 / 16384 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 16384 --connection-inactivity-timeout 6s
|
||||||
|
:: benchmark / h2load / http3 / 4096 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 4096
|
||||||
|
:: benchmark / h2load / http3 / 2048 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 2048
|
||||||
|
:: benchmark / h2load / http3 / 1024 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 1024
|
||||||
|
:: benchmark / h2load / http3 / 512 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 512
|
||||||
|
:: benchmark / h2load / http3 / 256 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 256
|
||||||
|
:: benchmark / h2load / http3 / 128 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 128
|
||||||
|
:: benchmark / h2load / http3 / 64 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 64
|
||||||
|
:: benchmark / h2load / http3 / 32 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 32
|
||||||
|
:: benchmark / h2load / http3 / 16 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 2 --clients 16
|
||||||
|
:: benchmark / h2load / http3 / 8 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 1 --clients 8
|
||||||
|
:: benchmark / h2load / http3 / 4 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 1 --clients 4
|
||||||
|
:: benchmark / h2load / http3 / 2 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 1 --clients 2
|
||||||
|
:: benchmark / h2load / http3 / 1 :: exec -- "${ZRUN[@]}" ':: benchmark / h2load / http3' "${@}" --threads 1 --clients 1
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -108,6 +134,15 @@
|
||||||
fi
|
fi
|
||||||
_arguments=()
|
_arguments=()
|
||||||
case "${_mode}" in
|
case "${_mode}" in
|
||||||
|
( http-all )
|
||||||
|
_arguments+=(
|
||||||
|
--bind 127.9.185.194:8080
|
||||||
|
--bind-tls 127.9.185.194:8443
|
||||||
|
--bind-tls-2 127.9.185.194:8444
|
||||||
|
--bind-quic 127.9.185.194:8445
|
||||||
|
--http3-alt-svc 127.9.185.194:8445
|
||||||
|
)
|
||||||
|
;;
|
||||||
( http )
|
( http )
|
||||||
_arguments+=(
|
_arguments+=(
|
||||||
--bind 127.9.185.194:8080
|
--bind 127.9.185.194:8080
|
||||||
|
@ -127,10 +162,21 @@
|
||||||
;;
|
;;
|
||||||
( http2-go )
|
( http2-go )
|
||||||
_arguments+=(
|
_arguments+=(
|
||||||
--bind-tls-2 127.9.185.194:8443
|
--bind-tls-2 127.9.185.194:8444
|
||||||
--http1-disable
|
--http1-disable
|
||||||
)
|
)
|
||||||
;;
|
;;
|
||||||
|
( http2-go-split )
|
||||||
|
_arguments+=(
|
||||||
|
--bind-tls 127.9.185.194:8444
|
||||||
|
)
|
||||||
|
;;
|
||||||
|
( http3-quic )
|
||||||
|
_arguments+=(
|
||||||
|
--bind-quic 127.9.185.194:8445
|
||||||
|
--http3-alt-svc 127.9.185.194:8445
|
||||||
|
)
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
exec -- \
|
exec -- \
|
||||||
sudo -u root -n -E -P -- \
|
sudo -u root -n -E -P -- \
|
||||||
|
@ -310,12 +356,16 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<< benchmark / h2load / http
|
<< benchmark / h2load / https
|
||||||
exec -- "${ZRUN[@]}" ':: benchmark / h2load' http 127.9.185.194:8080 "${@}"
|
exec -- "${ZRUN[@]}" ':: benchmark / h2load' https 127.9.185.194:8443 --npn-list=http/1.1 "${@}"
|
||||||
!!
|
!!
|
||||||
|
|
||||||
<< benchmark / h2load / https
|
<< benchmark / h2load / http2
|
||||||
exec -- "${ZRUN[@]}" ':: benchmark / h2load' https 127.9.185.194:8443 "${@}"
|
exec -- "${ZRUN[@]}" ':: benchmark / h2load' https 127.9.185.194:8444 --npn-list=h2 "${@}"
|
||||||
|
!!
|
||||||
|
|
||||||
|
<< benchmark / h2load / http3
|
||||||
|
exec -- "${ZRUN[@]}" ':: benchmark / h2load' https 127.9.185.194:8445 --npn-list=h3 "${@}"
|
||||||
!!
|
!!
|
||||||
|
|
||||||
--<< benchmark / h2load
|
--<< benchmark / h2load
|
||||||
|
@ -348,80 +398,3 @@
|
||||||
#
|
#
|
||||||
!!
|
!!
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<< benchmark / nghttp / https
|
|
||||||
exec -- "${ZRUN[@]}" ':: benchmark / nghttp' https 127.9.185.194:8443 "${@}"
|
|
||||||
!!
|
|
||||||
|
|
||||||
--<< benchmark / nghttp
|
|
||||||
test "${#}" -ge 2
|
|
||||||
_url_base="${1}://${2}"
|
|
||||||
shift -- 2
|
|
||||||
if test "${#}" -ge 1 ; then
|
|
||||||
if test "${1:0:1}" != '-' ; then
|
|
||||||
_path="${1}"
|
|
||||||
_path="${_path#/}"
|
|
||||||
shift -- 1
|
|
||||||
else
|
|
||||||
_path=''
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
_path=''
|
|
||||||
fi
|
|
||||||
exec -- \
|
|
||||||
"${ZRUN[@]}" ':: tools / nghttp' \
|
|
||||||
--null-out \
|
|
||||||
--stat \
|
|
||||||
"${@}" \
|
|
||||||
-- \
|
|
||||||
"${_url_base}/${_path}" \
|
|
||||||
#
|
|
||||||
!!
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<< benchmark / curl / http
|
|
||||||
exec -- "${ZRUN[@]}" ':: benchmark / curl' http 127.9.185.194:8080 --http1.1 "${@}"
|
|
||||||
!!
|
|
||||||
|
|
||||||
<< benchmark / curl / https
|
|
||||||
exec -- "${ZRUN[@]}" ':: benchmark / curl' https 127.9.185.194:8443 --http1.1 "${@}"
|
|
||||||
!!
|
|
||||||
|
|
||||||
<< benchmark / curl / http2
|
|
||||||
exec -- "${ZRUN[@]}" ':: benchmark / curl' https 127.9.185.194:8443 --http2 "${@}"
|
|
||||||
!!
|
|
||||||
|
|
||||||
<< benchmark / curl
|
|
||||||
test "${#}" -ge 2
|
|
||||||
_url_base="${1}://${2}"
|
|
||||||
shift -- 2
|
|
||||||
if test "${#}" -ge 1 ; then
|
|
||||||
if test "${1:0:1}" != '-' ; then
|
|
||||||
_path="${1}"
|
|
||||||
_path="${_path#/}"
|
|
||||||
shift -- 1
|
|
||||||
else
|
|
||||||
_path=''
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
_path=''
|
|
||||||
fi
|
|
||||||
exec -- \
|
|
||||||
"${ZRUN[@]}" ':: tools / curl' \
|
|
||||||
--compressed \
|
|
||||||
--output /dev/stdout \
|
|
||||||
--dump-header /dev/stdout \
|
|
||||||
"${@}" \
|
|
||||||
-- \
|
|
||||||
"${_url_base}/${_path}" \
|
|
||||||
#
|
|
||||||
!!
|
|
||||||
|
|
||||||
|
|
79
scripts/clients.z-run
Normal file
79
scripts/clients.z-run
Normal file
|
@ -0,0 +1,79 @@
|
||||||
|
#!/dev/null
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<< clients / nghttp / https
|
||||||
|
exec -- "${ZRUN[@]}" ':: clients / nghttp' https 127.9.185.194:8443 "${@}"
|
||||||
|
!!
|
||||||
|
|
||||||
|
<< clients / nghttp / http2
|
||||||
|
exec -- "${ZRUN[@]}" ':: clients / nghttp' https 127.9.185.194:8444 "${@}"
|
||||||
|
!!
|
||||||
|
|
||||||
|
--<< clients / nghttp
|
||||||
|
test "${#}" -ge 2
|
||||||
|
_url_base="${1}://${2}"
|
||||||
|
shift -- 2
|
||||||
|
if test "${#}" -ge 1 ; then
|
||||||
|
if test "${1:0:1}" != '-' ; then
|
||||||
|
_path="${1}"
|
||||||
|
_path="${_path#/}"
|
||||||
|
shift -- 1
|
||||||
|
else
|
||||||
|
_path=''
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
_path=''
|
||||||
|
fi
|
||||||
|
exec -- \
|
||||||
|
"${ZRUN[@]}" ':: tools / nghttp' \
|
||||||
|
--null-out \
|
||||||
|
--stat \
|
||||||
|
"${@}" \
|
||||||
|
-- \
|
||||||
|
"${_url_base}/${_path}" \
|
||||||
|
#
|
||||||
|
!!
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<< clients / curl / http
|
||||||
|
exec -- "${ZRUN[@]}" ':: clients / curl' http 127.9.185.194:8080 --http1.1 "${@}"
|
||||||
|
!!
|
||||||
|
|
||||||
|
<< clients / curl / https
|
||||||
|
exec -- "${ZRUN[@]}" ':: clients / curl' https 127.9.185.194:8443 --http1.1 "${@}"
|
||||||
|
!!
|
||||||
|
|
||||||
|
<< clients / curl / http2
|
||||||
|
exec -- "${ZRUN[@]}" ':: clients / curl' https 127.9.185.194:8444 --http2 "${@}"
|
||||||
|
!!
|
||||||
|
|
||||||
|
<< clients / curl
|
||||||
|
test "${#}" -ge 2
|
||||||
|
_url_base="${1}://${2}"
|
||||||
|
shift -- 2
|
||||||
|
if test "${#}" -ge 1 ; then
|
||||||
|
if test "${1:0:1}" != '-' ; then
|
||||||
|
_path="${1}"
|
||||||
|
_path="${_path#/}"
|
||||||
|
shift -- 1
|
||||||
|
else
|
||||||
|
_path=''
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
_path=''
|
||||||
|
fi
|
||||||
|
exec -- \
|
||||||
|
"${ZRUN[@]}" ':: tools / curl' \
|
||||||
|
--compressed \
|
||||||
|
--output /dev/stdout \
|
||||||
|
--dump-header /dev/stdout \
|
||||||
|
"${@}" \
|
||||||
|
-- \
|
||||||
|
"${_url_base}/${_path}" \
|
||||||
|
#
|
||||||
|
!!
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
::// workspace / ...
|
::// workspace / ...
|
||||||
::// execute / ...
|
::// execute / ...
|
||||||
|
::// clients / ...
|
||||||
::// examples / ...
|
::// examples / ...
|
||||||
::// benchmark / ...
|
::// benchmark / ...
|
||||||
::// go / ...
|
::// go / ...
|
||||||
|
@ -13,6 +14,7 @@
|
||||||
|
|
||||||
&& _/go.z-run
|
&& _/go.z-run
|
||||||
&& _/execute.z-run
|
&& _/execute.z-run
|
||||||
|
&& _/clients.z-run
|
||||||
&& _/examples.z-run
|
&& _/examples.z-run
|
||||||
&& _/benchmark.z-run
|
&& _/benchmark.z-run
|
||||||
&& _/workspace.z-run
|
&& _/workspace.z-run
|
||||||
|
|
Loading…
Reference in a new issue