我正在编写类似蜘蛛的脚本用于备份和旧论坛网站, 只是对入侵nodejs网络组件感兴趣,以查看和记录下载速度。
我正在使用请求请求({url:href,jar:j}),我认为它使用了http代码模块。 我没有成功找到类似的东西: process.memoryUsage()。heapUsed 仅用于网络使用。
答案 0 :(得分:1)
如果要测量脚本的带宽使用情况,可以通过 request itsefl使用的套接字对象访问此信息。
通过'数据处理收到的可用数据时event,请求对象存储有关正在进行的连接的信息。
在 agent.sockets 对象下,您可以找到正在使用的网络套接字。 bytesRead和bytesDispatched属性可能就是您要查找的内容。
request( { method: 'GET', uri: 'http://www.google.com')
.on('data', function(data) {
//this.agent.sockets
//this.agent.sockets["www.google.com:80"]["0"].bytesRead
//this.agent.sockets["www.google.com:80"]["0"]._bytesDispatched
})