首页 > 解决方案 > 读取 http 请求正文的性能问题

问题描述

我使用以下代码片段来读取(不进行任何解析)HTTP 请求的正文:

'use strict'

const http = require('http')

http.createServer((req, res) => {
    console.time('read')

    const body = []

    req.on('data', (chunk) => {
        body.push(chunk)
    })
    req.on('end', () => {
        console.timeEnd('read')

        console.log(Buffer.concat(body).toString())
        res.write('OK')
        res.end()
    })
}).listen(3000)

正文很简单:{"n":"v"}。根据read计时器,在我的 Windows 7 主机上需要超过 200 毫秒,在 ubuntu 主机上大约需要 40-50 毫秒。恕我直言,200 毫秒对于此类请求来说太长了。

这个问题的原因是什么,尤其是在win主机上,是否可以解决?

标签: node.jsperformancehttp

解决方案


推荐阅读