mirror of https://github.com/lukechilds/node.git
Ryan Dahl
13 years ago
2 changed files with 46 additions and 0 deletions
@ -0,0 +1,25 @@ |
|||
var net = require('net'); |
|||
var received = 0; |
|||
var start = new Date(); |
|||
var socket = net.connect(8000); |
|||
|
|||
socket.on('data', function(d) { |
|||
received += d.length; |
|||
}); |
|||
|
|||
var interval = setInterval(function() { |
|||
// After 1 gigabyte shutdown.
|
|||
if (received > 10 * 1024 * 1024 * 1024) { |
|||
socket.destroy(); |
|||
clearInterval(interval); |
|||
process.exit(0); |
|||
} else { |
|||
// Otherwise print some stats.
|
|||
var now = new Date(); |
|||
var gigabytes = received / (1024 * 1024 * 1024); |
|||
var gigabits = gigabytes * 8.0; |
|||
var millisec = now - start; |
|||
var sec = millisec / 1000; |
|||
console.log((gigabits / sec) + " gbit/sec") |
|||
} |
|||
}, 1000); |
@ -0,0 +1,21 @@ |
|||
var fork = require('child_process').fork; |
|||
var net = require('net'); |
|||
var buffer = new Buffer(1024 * 1024); |
|||
|
|||
function write(socket) { |
|||
if (!socket.writable) return; |
|||
|
|||
socket.write(buffer, function() { |
|||
write(socket); |
|||
}); |
|||
} |
|||
|
|||
var server = net.createServer(function(socket) { |
|||
server.close(); |
|||
write(socket); |
|||
}); |
|||
|
|||
server.listen(8000, function() { |
|||
fork(__dirname + '/throughput-child.js'); |
|||
}); |
|||
|
Loading…
Reference in new issue