Tag: stream

当缓冲使用streampipe道时,节点回应服务器的性能下降10倍

在节点v8.1.4和v6.11.1上 我从下面的回声服务器实现开始,我将其称为pipe.js或pipe 。 const http = require('http'); const handler = (req, res) => req.pipe(res); http.createServer(handler).listen(3001); 我用wrk和下面的lua脚本(简写为简称)进行了基准testing,将发送一个小的身体作为有效载荷。 wrk.method = "POST" wrk.body = string.rep("a", 10) 在每秒2k个请求和平均延迟为44ms的情况下,性能不是很好。 所以我写了另一个使用中间缓冲区的实现,直到请求完成,然后写出这些缓冲区。 我将这个称为buffer.js或缓冲区 。 const http = require('http'); const handler = (req, res) => { let buffs = []; req.on('data', (chunk) => { buffs.push(chunk); }); req.on('end', () => { res.write(Buffer.concat(buffs)); res.end(); }); […]