call an async function for each data event into through stream. manage concurrency as back pressure.
var pressure = require('pressure-stream');
var split = require('split2');
var request = require('request');
var concurrency = 100 // never ever do more than 100 requests at a time.
process.stdin.pipe(split())
.pipe(pressure(function(data,cb){
request(data,function(err,res,body){
cb(err,body)
});
},concurrency)).pipe(process.stdout);