|
|
|
|
|
by nkallen
4665 days ago
|
|
I wonder if you could handle backpressure this way, somewhat analogously to a thread-per-connection with a bounded number of threads. I don't think node.js API exposes the necessary functionality, but the point is that it's possible with callbacks: var MAX = 100,
connections = 0;
function continue() {
server.once('connection', function(c) {
if (++connections < MAX) continue();
process(c, function() {
if (--connections == MAX - 1) continue();
});
});
}
continue();
Node.js doesn't have threads so you wouldn't need atomics or locking. I don't think it's fair to say this is spaghetti, but it has some complexity, yes. |
|