Hi everyone,
I wonder if it would make sense to recommend everyone to set "ulimit -n" to
unlimited when using node... I seem to run into issues with it every now
and then.
Anyway, it seems that node.js core itself has serious trouble with it. I
used "ab -n 10000 -c 5000" to bombard a simple http server with thousands
of requests, and after that node.js starts to eat up 100% CPU and never
returns control to javascript. HTTP port remains open, but connection is
closed as soon as anybody connects to it.
Can you recheck it? Maybe I have some silly settings on my computer that
cause this.
Tested several versions. 0.8.23 fails with EMFILE (this is to be expected),
0.8.7 and 0.9.1 handles anything successfully (surprising, but ok), but all
versions starting I believe from 0.9.2 including current version have this
issue.
I wonder if it's a security issue, and everybody can freeze node.js server
by just opening 2k connections to it.
I'm using this for testing:
```
setInterval(function() {
console.log('I\'m alive, ', Date.now());
}, 1000);
require('http').createServer(function(req, res) {
res.end('xxx');
}).listen(12345);
```
In another console (under root because ordinary user can't up ulimit by
himself):
# ulimit -n 10000
# ab -n 10000 -c 5000 http://127.0.0.1:12345/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 127.0.0.1 (be patient)
apr_socket_recv: Connection reset by peer (104)
Total of 59 requests completed
# ps aux | grep node
alex 4582 91.7 0.2 592480 11192 pts/11 Rl+ 12:58 0:31 node
/tmp/test.js
root 4596 0.0 0.0 8976 876 pts/4 S+ 12:59 0:00 grep node
# time telnet 127.0.0.1 12345
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Connection closed by foreign host.
real 0m0.004s
user 0m0.004s
sys 0m0.000s
--
--
Job Board: http://jobs.nodejs.org/
Posting guidelines:
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en
---
You received this message because you are subscribed to the Google Groups
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.