Hi Michele
There's some discussion on slack regarding this question. The node runtime
by default will not permit more than one /run call at a time.
The work that Tyson recently concluded does relax this.
I did however run the node runtime locally using the echo.js action, and
get very different numbers:
> docker run -p 8080:8080 openwhisk/nodejs6action &
> ./tools/actionProxy/invoke.py init tests/dat/actions/echo.js
> cat post.lua
wrk.method = "POST"
wrk.body = '{"value":{}}'
> wrk -t1 -c1 -s ./post.lua http://localhost:8080/run
Running 10s test @ http://localhost:8080/run
1 threads and 1 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 818.73us 581.66us 13.76ms 95.66%
Req/Sec 1.29k 237.66 1.71k 72.28%
12995 requests in 10.10s, 2.57MB read
Requests/sec: 1286.39
On Sun, Nov 18, 2018 at 4:16 PM Michele Sciabarra <[email protected]>
wrote:
> I wrote an actionloop runtime for NodeJS, to compare performances with
> the current NodeJS.
> Source is again in
> https://github.com/sciabarracom/incubator-openwhisk-runtime-actionloop
>
> Numbers are closer to those of Python: 88 requests/sec
>
> bash test.sh msciab/actionloop-nodejs-v6.14
> 5b63009f3f5736c6bdec65c9f528a8603ce0e11e1d0d04e2c9e9cf41b7ae3ccf
> {"ok":true}
>
> Running 1m test @ http://localhost:8080/run
> 1 threads and 1 connections
> Thread Stats Avg Stdev Max +/- Stdev
> Latency 11.32ms 1.17ms 60.69ms 94.27%
> Req/Sec 88.60 5.40 101.00 75.71%
> 5305 requests in 1.00m, 651.85KB read
> Requests/sec: 88.38
> Transfer/sec: 10.86KB
>
>
> The strange thing is I tried to compare performances with the NodeJS
> runtime but the current one crashes under heavy load using the wrk tool
> (even with ONE connection and ONE thread). But almost immediately I start
> to get the error
>
> Internal system error: System not ready, status is running.
>
> Can someone tell me why this happens and how I you test performances?
>
> --
> Michele Sciabarra
> [email protected]
>