diff --git a/collects/tests/web-server/stress/vshop/.gitignore b/collects/tests/web-server/stress/vshop/.gitignore new file mode 100644 index 0000000000..70b8a9ff79 --- /dev/null +++ b/collects/tests/web-server/stress/vshop/.gitignore @@ -0,0 +1 @@ +/static.txt diff --git a/collects/tests/web-server/stress/vshop/Makefile b/collects/tests/web-server/stress/vshop/Makefile new file mode 100644 index 0000000000..cb53509d96 --- /dev/null +++ b/collects/tests/web-server/stress/vshop/Makefile @@ -0,0 +1,16 @@ +dyn-server: dynamic.rkt + ulimit -n 10000 + racket -t dynamic.rkt + +static.txt: dynamic.rkt + wget http://localhost:8000 -O static.txt + +stat-server: static.txt static.rkt + ulimit -n 10000 + racket -t static.rkt + +dyn-httperf: + httperf --hog --server localhost --port=8000 --rate=6000 --num-conn=5 --num-calls=1000 + +stat-httperf: + httperf --hog --server localhost --port=8000 --rate=6000 --num-conn=5 --num-calls=1000 \ No newline at end of file diff --git a/collects/tests/web-server/stress/vshop/dynamic.rkt b/collects/tests/web-server/stress/vshop/dynamic.rkt new file mode 100644 index 0000000000..71acc5824c --- /dev/null +++ b/collects/tests/web-server/stress/vshop/dynamic.rkt @@ -0,0 +1,14 @@ +#lang racket/base +(require web-server/servlet-env) + +(define (fac n a) + (if (zero? n) a + (fac (sub1 n) (* n a)))) + +(define (start req) + (number->string (fac 10 1))) + +(serve/servlet start + #:servlet-regexp #rx"" + #:port 8000 + #:command-line? #t) diff --git a/collects/tests/web-server/stress/vshop/static.rkt b/collects/tests/web-server/stress/vshop/static.rkt new file mode 100644 index 0000000000..082a4c0c70 --- /dev/null +++ b/collects/tests/web-server/stress/vshop/static.rkt @@ -0,0 +1,13 @@ +#lang racket/base +(require web-server/servlet-dispatch + racket/runtime-path + web-server/dispatchers/dispatch-files) + +(define-runtime-path static-path "static.txt") + +(serve/launch/wait + (λ (sema) + (make #:url->path (λ (url) (values static-path null)))) + #:launch-path #f + #:banner? #f + #:port 8001) \ No newline at end of file